Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-473

Improve error message when 2.x client tries to mount 1.8 server

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: Lustre 2.1.0
    • Fix Version/s: Lustre 2.1.0
    • Labels:
      None
    • Story Points:
      2
    • Rank (Obsolete):
      4909

      Description

      When a 2.x client is trying to mount a 1.8 server filesystem, it fails with obscure error messages:

      dmesg shows the following:

      Lustre: OBD class driver, http://www.lustre.org/
      Lustre: Lustre Version: 2.0.62
      Lustre: Build Version: ../lustre/scripts--PRISTINE-2.6.32-71.29.1.el6_trunk_roger
      Lustre: Lustre LU module (ffffffffa0323180).
      Lustre: Register global MR array, MR size: 0xffffffffffffffff, array size: 1
      Lustre: Added LNI 10.2.3.113@o2ib [8/64/0/180]
      Lustre: Lustre OSC module (ffffffffa0548a20).
      Lustre: Lustre LOV module (ffffffffa05b0f00).
      Lustre: Lustre client module (ffffffffa0647ae0).
      Lustre: 28105:0:(sec.c:1474:sptlrpc_import_sec_adapt()) import MGC10.2.34.111@o2ib->MGC10.2.34.111@o2ib_0 netid 50000: select flavor null
      LustreError: 152-6: Ignoring deprecated mount option 'noacl'.
      Lustre: MGC10.2.34.111@o2ib: Reactivating import
      Lustre: Server MGS version (1.8.4.0) is much older. Consider upgrading this client (2.0.62)
      Lustre: 28105:0:(sec.c:1474:sptlrpc_import_sec_adapt()) import IDADTS-MDT0000-mdc-ffff880613540000->10.2.34.111@o2ib netid 50000: select flavor null
      Lustre: Server IDADTS-MDT0000_UUID version (1.8.4.0) is much older. Consider upgrading this client (2.0.62)
      Lustre: client wants to enable acl, but mdt not!
      LustreError: 28105:0:(pack_generic.c:410:lustre_msg_buf_v2()) msg ffff8805f1ce9800 buffer[1] size 168 too small (required 216, opc=40)
      LustreError: 28105:0:(layout.c:1661:__req_capsule_get()) @@@ Wrong buffer for field `mdt_body' (1 of 2) in format `MDS_GETSTATUS': 168 vs. 216 (server) req@ffff8805f1ce9c00 x1372337387601958/t0(0) o-1->IDADTS-MDT0000_UUID@10.2.34.111@o2ib:12/10 lens 408/360 e 0 to 0 dl 1308762928 ref 1 fl Complete:R/ffffffff/ffffffff rc 0/-1
      LustreError: 28105:0:(llite_lib.c:419:client_common_fill_super()) cannot mds_connect: rc = -71
      LustreError: 28165:0:(lov_obd.c:482:lov_notify()) event(2) of IDADTS-OST0000_UUID failed: -22
      LustreError: 28165:0:(lov_obd.c:482:lov_notify()) event(2) of IDADTS-OST0001_UUID failed: -22
      Lustre: 28165:0:(client.c:1776:ptlrpc_expire_one_request()) @@@ Request x1372337387601936 sent from IDADTS-OST0002-osc-ffff880613540000 to NID 10.2.34.114@o2ib has failed due to network error: [sent 1308762921] [real_sent 1308762921] [current 1308762921] [deadline 5s] [delay -5s] req@ffff8805f1cd4800 x1372337387601936/t0(0) o-1->IDADTS-OST0002_UUID@10.2.34.114@o2ib:28/4 lens 368/392 e 0 to 1 dl 1308762926 ref 1 fl Rpc:XN/ffffffff/ffffffff rc 0/-1
      Lustre: 28165:0:(client.c:1776:ptlrpc_expire_one_request()) @@@ Request x1372337387601937 sent from IDADTS-OST0003-osc-ffff880613540000 to NID 10.2.34.114@o2ib has failed due to network error: [sent 1308762921] [real_sent 1308762921] [current 1308762921] [deadline 5s] [delay -5s] req@ffff8805f1cd4000 x1372337387601937/t0(0) o-1->IDADTS-OST0003_UUID@10.2.34.114@o2ib:28/4 lens 368/392 e 0 to 1 dl 1308762926 ref 1 fl Rpc:XN/ffffffff/ffffffff rc 0/-1
      LustreError: 28105:0:(ldlm_request.c:1169:ldlm_cli_cancel_req()) Got rc -108 from cancel RPC: canceling anyway
      LustreError: 28105:0:(ldlm_request.c:1796:ldlm_cli_cancel_list()) ldlm_cli_cancel_list: -108
      Lustre: client ffff880613540000 umount complete
      LustreError: 28105:0:(obd_mount.c:2151:lustre_fill_super()) Unable to mount (-71)

      I've already filed LU-458 and LU-459 to silence the spurious error messages from every mount, but it would be good to have a proper error message that the client is not compatible with the server, instead of just failing after a bunch of garbage error message.

      The message "Lustre: Server IDADTS-MDT0000_UUID version (1.8.4.0) is much older. Consider upgrading this client (2.0.62)" is almost correct, but it doesn't state the right thing, and compatibilty shouldn't be related to the version numbers, but rather the feature flags.

        Attachments

          Activity

            People

            • Assignee:
              adilger Andreas Dilger
              Reporter:
              adilger Andreas Dilger
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: