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 "Boris Kolpackov (JIRA)" <xe...@xml.apache.org> on 2009/11/18 07:08:39 UTC

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

     [ https://issues.apache.org/jira/browse/XERCESC-1202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Boris Kolpackov closed XERCESC-1202.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 3.0.1

Assuming fixed in 3.0.1.

> GeneralAttributeCheck initialize fails
> --------------------------------------
>
>                 Key: XERCESC-1202
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1202
>             Project: Xerces-C++
>          Issue Type: Bug
>          Components: Validating Parser (XML Schema)
>    Affects Versions: 2.3.0
>         Environment: Sun Solaris 8
>            Reporter: Michael Kopp
>            Priority: Critical
>             Fix For: 3.0.1
>
>
> 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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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