You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by ji...@apache.org on 2004/04/26 10:31:53 UTC

[jira] Created: (XERCESC-1202) GeneralAttributeCheck initialize fails

Message:

  A new issue has been created in JIRA.

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/XERCESC-1202

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XERCESC-1202
    Summary: GeneralAttributeCheck initialize fails
       Type: Bug

     Status: Unassigned
   Priority: Critical

    Project: Xerces-C++
 Components: 
             Validating Parser (Schema) (Xerces 1.5 or up only)
   Versions:
             2.3.0

   Assignee: 
   Reporter: Michael Kopp

    Created: Mon, 26 Apr 2004 1:30 AM
    Updated: Mon, 26 Apr 2004 1:30 AM
Environment: Sun Solaris 8

Description:
We are parsing the same xml in multiple threads, which contains a schema. Very frequently, at least once for every tinderbox build, we get the following core dump:

=>[1] xercesc_2_3::ValueHashTableOf<unsigned short>::findBucketElem(this = (nil), key = 0x8ec3a4, hashVal = 4265683276U), line 252 in "ValueHashTableOf.c"
  [2] xercesc_2_3::ValueHashTableOf<unsigned short>::get(this = (nil), key = 0x8ec3a4), line 199 in "ValueHashTableOf.c"
dbx: warning: unexpected RTTI for type xercesc_2_3::XSDLocator
  [3] xercesc_2_3::GeneralAttributeCheck::getFacetId(this = 0xfc500c24, facetName = 0x8ec3a4), line 298 in "GeneralAttributeCheck.hpp"
  [4] xercesc_2_3::TraverseSchema::traverseByRestriction(this = 0xfc500b58, rootElem = 0x8ec008, contentElem = 0x8ec118, typeName = 0x453198, qualifiedName = 0x47b758, finalSet = 0), line 2981 in "TraverseSchema.cpp"
  [5] xercesc_2_3::TraverseSchema::traverseSimpleTypeDecl(this = 0xfc500b58, childElem = 0x8ec008, topLevel = false, baseRefContext = 0), line 1082 in "TraverseSchema.cpp"
  [6] xercesc_2_3::TraverseSchema::traverseAttributeDecl(this = 0xfc500b58, elem = 0x8ebdd8, typeInfo = 0x33eee0, topLevel = false), line 2053 in "TraverseSchema.cpp"
  [7] xercesc_2_3::TraverseSchema::processAttributes(this = 0xfc500b58, elem = 0x8eac50, attElem = 0x8ebdd8, baseRawName = (nil), baseLocalPart = (nil), baseURI = (nil), typeInfo = 0x33eee0, isBaseAnyType = false), line 6108 in "TraverseSchema.cpp"
  [8] xercesc_2_3::TraverseSchema::processComplexContent(this = 0xfc500b58, ctElem = 0x8eac50, typeName = 0x8ead70, childElem = 0x8eae40, typeInfo = 0x33eee0, baseRawName = (nil), baseLocalPart = (nil), baseURI = (nil), isMixed = false, isBaseAnyType = false), line 5906 in "TraverseSchema.cpp"
  [9] xercesc_2_3::TraverseSchema::traverseComplexTypeDecl(this = 0xfc500b58, elem = 0x8eac50, topLevel = true, recursingTypeName = (nil)), line 1269 in "TraverseSchema.cpp"
  [10] xercesc_2_3::TraverseSchema::processChildren(this = 0xfc500b58, root = 0x8ea5a8), line 4283 in "TraverseSchema.cpp"
  [11] xercesc_2_3::TraverseSchema::doTraverseSchema(this = 0xfc500b58, schemaRoot = 0x8ea5a8), line 276 in "TraverseSchema.cpp"
  [12] xercesc_2_3::TraverseSchema::TraverseSchema(this = 0xfc500b58, schemaRoot = 0x8ea5a8, uriStringPool = 0x43d0f0, schemaGrammar = 0x8cfe10, grammarResolver = 0x8844b8, xmlScanner = 0x21a458, schemaURL = 0x2126c0, entityHandler = (nil), errorReporter = 0x3ff874, manager = 0xd50b8), line 253 in "TraverseSchema.cpp"
  [13] xercesc_2_3::IGXMLScanner::resolveSchemaGrammar(this = 0x21a458, loc = 0x812458, uri = 0x213ad8), line 1421 in "IGXMLScanner2.cpp"
  [14] xercesc_2_3::IGXMLScanner::parseSchemaLocation(this = 0x21a458, schemaLocationStr = 0x262a58), line 1285 in "IGXMLScanner2.cpp"
  [15] xercesc_2_3::IGXMLScanner::scanRawAttrListforNameSpaces(this = 0x21a458, theRawAttrList = 0x7dbd30, attCount = 4), line 1247 in "IGXMLScanner2.cpp"
  [16] xercesc_2_3::IGXMLScanner::scanStartTagNS(this = 0x21a458, gotData = true), line 2034 in "IGXMLScanner.cpp"
  [17] xercesc_2_3::IGXMLScanner::scanContent(this = 0x21a458, extEntity = false), line 849 in "IGXMLScanner.cpp"
  [18] xercesc_2_3::IGXMLScanner::scanDocument(this = 0x21a458, src = CLASS), line 209 in "IGXMLScanner.cpp"
  [19] xercesc_2_3::XMLScanner::scanDocument(this = 0x21a458, systemId = 0x25b9b8), line 419 in "XMLScanner.cpp"
  [20] xercesc_2_3::XMLScanner::scanDocument(this = 0x21a458, systemId = 0x817d58 "/view/auto_build_MessageMapper_Development-dcacpl1-2004-04-25.2135_view/dcaclearcase/vobs/eQuality/eBridge/../../eBridge/FormatDefinitions/swift/SwiftDataDictionary.xml"), line 427 in "XMLScanner.cpp"
  [21] xercesc_2_3::SAX2XMLReaderImpl::parse(this = 0x3ff868, systemId = 0x817d58 "/view/auto_build_MessageMapper_Development-dcacpl1-2004-04-25.2135_view/dcaclearcase/vobs/eQuality/eBridge/../../eBridge/FormatDefinitions/swift/SwiftDataDictionary.xml"), line 637 in "SAX2XMLReaderImpl.cpp"
  [22] ftisoft::vendor::swift::Field::GetDictionary(toFill = CLASS, def_dir = CLASS), line 156 in "DataDictionary.cpp"
  ...

I looked into it and found that the initialize of GeneralAttributeCheck::mapElements seems to fail. Although the mutex (sGeneralAttCheckMutex) contains a valid mutex, every single member field that should get a value (setUpValidators,mapAttributes) is null.

I was net yet able to find out how this is possible.


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org