Uploaded image for project: 'Directory ApacheDS'
  1. Directory ApacheDS
  2. DIRSERVER-1556

Error message: ERR_00004 The PDU buffer size is too small !

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 1.5.7
    • 2.0.0-M11
    • None
    • None
    • Windows Server 2003 SP2 / Sun JRE 6 update 21

    Description

      We're currently testing Apache Directory Server (ADS) in a custom environment for a customer of ours. In this environment ADS is used to store certificates and certificate revocation lists. At first everything seemed to be working fine, but we encounter an error that seems to randomly occur every now. When adding an object, viewing an object in Directory Studio or adding attributes (the certificate) to an existing object this fails with the following message in apacheds-rolling.log: ERR_00004 The PDU buffer size is too small !. After encountering this error I twice raised the max PDU buffer size in server.xml to:

      maxPDUSize="40000000"

      And restarted the server. Unfortunately the error still occurs every now and then. The issue occurs seemingly randomly, independent of the accessed object or the LDAP client that is used. If ADS is restarted and Directory Studio reconnects the same object can be viewed normally.

      I'd appreciate if someone could explain why this occurs and, if possible, how this can be fixed. A log fragment is below. The company name as it occurs in the log file has been modified.

      Log fragment:

      [16:58:09] ERROR [org.apache.directory.shared.ldap.codec.LdapEncoder] - ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      [16:58:09] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Unexpected exception forcing session to close: sending disconnect notice to client.
      org.apache.mina.filter.codec.ProtocolEncoderException: org.apache.directory.shared.ldap.message.spi.ProviderException: ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:313)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1400(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:805)
      at org.apache.mina.filter.executor.ExecutorFilter.filterWrite(ExecutorFilter.java:706)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1400(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:805)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.filterWrite(DefaultIoFilterChain.java:731)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterWrite(DefaultIoFilterChain.java:498)
      at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:428)
      at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:369)
      at org.apache.directory.server.ldap.handlers.SearchHandler.readResults(SearchHandler.java:334)
      at org.apache.directory.server.ldap.handlers.SearchHandler.doSimpleSearch(SearchHandler.java:749)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleIgnoringReferrals(SearchHandler.java:978)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleWithReferrals(SearchHandler.java:1054)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleWithReferrals(SearchHandler.java:78)
      at org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:94)
      at org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:57)
      at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:208)
      at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:58)
      at org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:232)
      at org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:193)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:713)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793)
      at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:71)
      at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
      at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:480)
      at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:434)
      at java.lang.Thread.run(Unknown Source)
      Caused by: org.apache.directory.shared.ldap.message.spi.ProviderException: ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      at org.apache.directory.shared.ldap.codec.LdapEncoder.encodeBlocking(LdapEncoder.java:139)
      at org.apache.directory.shared.ldap.codec.LdapEncoder.encode(LdapEncoder.java:200)
      at org.apache.directory.shared.ldap.message.MessageEncoder.encode(MessageEncoder.java:125)
      at org.apache.directory.shared.asn1.codec.Asn1CodecEncoder.encode(Asn1CodecEncoder.java:58)
      at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:298)
      ... 32 more
      [16:58:09] WARN [org.apache.directory.shared.asn1.ber.Asn1Decoder] - The PDU has been fully decoded but there are still bytes in the buffer.
      [16:58:09] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Null LdapSession given to cleanUpSession.
      [16:58:09] ERROR [org.apache.directory.shared.ldap.codec.LdapEncoder] - ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      [16:58:09] WARN [org.apache.directory.server.ldap.LdapProtocolHandler] - Unexpected exception forcing session to close: sending disconnect notice to client.
      org.apache.mina.filter.codec.ProtocolEncoderException: org.apache.directory.shared.ldap.message.spi.ProviderException: ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:313)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1400(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:805)
      at org.apache.mina.filter.executor.ExecutorFilter.filterWrite(ExecutorFilter.java:706)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1400(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.filterWrite(DefaultIoFilterChain.java:805)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.filterWrite(DefaultIoFilterChain.java:731)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callPreviousFilterWrite(DefaultIoFilterChain.java:506)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireFilterWrite(DefaultIoFilterChain.java:498)
      at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:428)
      at org.apache.mina.core.session.AbstractIoSession.write(AbstractIoSession.java:369)
      at org.apache.directory.server.ldap.handlers.SearchHandler.readResults(SearchHandler.java:334)
      at org.apache.directory.server.ldap.handlers.SearchHandler.doSimpleSearch(SearchHandler.java:749)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleIgnoringReferrals(SearchHandler.java:978)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleWithReferrals(SearchHandler.java:1054)
      at org.apache.directory.server.ldap.handlers.SearchHandler.handleWithReferrals(SearchHandler.java:78)
      at org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:94)
      at org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:57)
      at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:208)
      at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:58)
      at org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:232)
      at org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:193)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:713)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)
      at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793)
      at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:71)
      at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63)
      at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTask(UnorderedThreadPoolExecutor.java:480)
      at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.run(UnorderedThreadPoolExecutor.java:434)
      at java.lang.Thread.run(Unknown Source)
      Caused by: org.apache.directory.shared.ldap.message.spi.ProviderException: ERR_04065 Ldap encoder failed to encode object: Search Result Entry
      entry
      ServerEntry
      dn[n]: cn=Test 01 User+givenName=Test 01+mail=test01user@test.lan+sn=User,organizationalUnitName=Test,o=Test Bedrijf, c=NL
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      sn: User
      mail: test01user@test.lan
      givenName: Test 01
      cn: Test 01 User
      x500uniqueidentifier: '0011001100111001011001100011010100110011011001100110010001100100001101110011011001100100001100110011001100110111001101000011011000110101001110010110000101100011001100000110011001100011001101000011011100110111011000100011001100110000001110000110000100110111'B
      businesscategory: Valid
      userCertificate;binary: '0x30 0x82 0x06 0xD6 0x30 0x82 0x04 0xBE 0xA0 0x03 0x02 0x01 0x02 0x02 0x10 0x39 ...'
      , error : ERR_00004 The PDU buffer size is too small !
      at org.apache.directory.shared.ldap.codec.LdapEncoder.encodeBlocking(LdapEncoder.java:139)
      at org.apache.directory.shared.ldap.codec.LdapEncoder.encode(LdapEncoder.java:200)
      at org.apache.directory.shared.ldap.message.MessageEncoder.encode(MessageEncoder.java:125)
      at org.apache.directory.shared.asn1.codec.Asn1CodecEncoder.encode(Asn1CodecEncoder.java:58)
      at org.apache.mina.filter.codec.ProtocolCodecFilter.filterWrite(ProtocolCodecFilter.java:298)
      ... 32 more

      Attachments

        Activity

          People

            Unassigned Unassigned
            ewasscher_getronics Ewald Wasscher
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: