Nicholas Dzwill created IGNITE-1493:
---------------------------------------

             Summary: Fatal exception is thrown during queue instantiation when 
using Ignite with an HP-UX machine.
                 Key: IGNITE-1493
                 URL: https://issues.apache.org/jira/browse/IGNITE-1493
             Project: Ignite
          Issue Type: Bug
          Components: data structures
         Environment: * HP-UX B.11.31 IA64W machine
* JRE version: Java(TM) SE Runtime Environment (7.0) (build 
1.7.0.14-jinteg_2015_08_07_03_06-b00)
* Java VM: Java HotSpot(TM) Server VM (24.85-b05-jre1.7.0.14-rc1 mixed mode 
hp-ux-ia64 )
            Reporter: Nicholas Dzwill
            Priority: Blocker


A fatal exception is thrown during queue instantiation when using an HP-UX 
B.11.31 IA64W machine.

The environment is as follows:
*JRE version: Java(TM) SE Runtime Environment (7.0) (build 
1.7.0.14-jinteg_2015_08_07_03_06-b00)
*Java VM: Java HotSpot(TM) Server VM (24.85-b05-jre1.7.0.14-rc1 mixed mode 
hp-ux-ia64 )

The error logged is as follows:
*Current thread (01ab2800):  JavaThread "main" [_thread_in_vm, id=23, 
lwp_id=3525570, stack(4e501000,4e601000)]
 *siginfo:si_signo=SIGBUS: si_errno=0, si_code=1 (BUS_ADRALN), si_addr=5e038d15
                     
The exception above means there is an "invalid address alignment" (writing to 
an odd memory location) when calling the following method:
*Class: org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream
*Method:
{code:title=Bar.java|borderStyle=solid}
            /** {@inheritDoc} */
        @Override public void writeInt(int v) throws IOException {
            requestFreeSize(4);

            UNSAFE.putInt(bytes, byteArrOff + off, v); // byteArrOff + off = 17 
when this exception is thrown

            onWrite(4);
        }
{code}
        
Basic setup - Ignite is configured with spring and pushed to the constructor of 
a class.  That class uses this instance of Ignite to instantiate an IgniteQueue 
as follows: 
{code:title=Bar.java|borderStyle=solid}
        CollectionConfiguration configuration = new CollectionConfiguration();
    configuration.setCollocated(true); 
    IgniteQueue<String> queue = ignite.queue("queue", 0, configuration);
{code}
                
Partial stack:
*Instantiating the queue calls:       
**org.apache.ignite.internal.processors.datastructures.DataStructuresProcessor.compatibleConfiguration()
 
*Which in turn calls:
**org.apache.ignite.internal.processors.cache.GridCacheAdapter.invoke()
*Leading to the fatal error when calling:
**org.apache.ignite.marshaller.optimized.OptimizedObjectOutputStream.writeInt()

The error log has been attached with the stack trace of the error.  The server 
log is also attached.  We are running Ignite in a variety of environments and 
this issue only appears to exist in this specific environment and is 
consistently hit in the same place with no apparent work-around.              



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to