Uploaded image for project: 'HPCC'
  1. HPCC
  2. HPCC-16043

loopall.ecl serialized uninitialised data

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Cannot Reproduce
    • Affects Version/s: None
    • Fix Version/s: 6.0.6
    • Component/s: Thor
    • Labels:
      None
    • Compatibility:
      Point

      Description

      This could be a problem copying a structure with gaps in it (so possibly to be ignored). valgrind reported the following:

      ==19838== Syscall param socketcall.sendto(msg) points to uninitialised byte(s)
      ==19838==    at 0x795195B: send (send.c:31)
      ==19838==    by 0x5014574: CSocket::write(void const*, unsigned int) (jsocket.cpp:1753)
      ==19838==    by 0x5015549: CSocket::write_multiple(unsigned int, void const**, unsigned int*) (jsocket.cpp:2030)
      ==19838==    by 0x6F74203: CMPChannel::writepacket(void const*, unsigned int, void const*, unsigned int, void const*, unsigned int, CTimeMon&) (mpcomm.cpp:1033)
      ==19838==    by 0x6F74354: CMPChannel::writepacket(void const*, unsigned int, void const*, unsigned int, CTimeMon&) (mpcomm.cpp:1049)
      ==19838==    by 0x6F74AC3: UserPacketHandler::send(CMPChannel*, PacketHeader&, MemoryBuffer&, CTimeMon&) (mpcomm.cpp:1198)
      ==19838==    by 0x6F6DC5C: CMPChannel::send(MemoryBuffer&, mptag_t, mptag_t, CTimeMon&, bool) (mpcomm.cpp:1750)
      ==19838==    by 0x6F77371: CCommunicator::send(CMessageBuffer&, unsigned int, mptag_t, unsigned int) (mpcomm.cpp:2687)
      ==19838==    by 0x6F77EE5: CCommunicator::sendRecv(CMessageBuffer&, unsigned int, mptag_t, unsigned int) (mpcomm.cpp:2883)
      ==19838==    by 0x6878EBA: CSlaveGraph::recvActivityInitData(unsigned int, unsigned char const*) (thgraphslave.cpp:862)
      ==19838==    by 0x6879DED: CSlaveGraph::executeSubGraph(unsigned int, unsigned char const*) (thgraphslave.cpp:1027)
      ==19838==    by 0x65F7627: CGraphBase::execute(unsigned int, unsigned char const*, bool, bool) (thgraph.cpp:1259)
      ==19838==  Address 0xf216c78 is 56 bytes inside a block of size 128 alloc'd
      ==19838==    at 0x4C2AB80: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
      ==19838==    by 0x4F5F03E: checked_malloc(unsigned long, int) (jbuff.hpp:645)
      

      I'll rerun with --track-origin to see if it is reproducible/the root cause.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jakesmith Jake Smith
                Reporter:
                ghalliday Gavin Halliday
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: