On 28 Aug 2014, at 17:45, amoore <[email protected]> wrote:

> Yes, unfortunately we tried the advice of setting the compressionMode to 
> either 'nothing' or 'gzip'. Neither setting seemed to stop karaf to stop 
> trying to load the org.xerial.snappy library, which threw an exception and 
> stopped our bundles from loading due to it apparently not being compatible 
> with windows 2012. We also tried meddling with the manifest files of both 
> snappy and the orientdb-core libraries. Still had no luck running in those 
> situations.

You could try the following steps as a workaround that avoids any 
re-packaging/re-bundling:

  a)  Use a maven exclusion to remove snappy-java as a dependency, so Karaf 
doesn't attempt to add it to the system in the first place:

      <dependency>
        <groupId>com.orientechnologies</groupId>
        <artifactId>orientdb-core</artifactId>
        <version>${orientdb.version}</version>
        <exclusions>
          <exclusion>
            <groupId>org.xerial.snappy</groupId>
            <artifactId>snappy-java</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

  b)  Add org.xerial.snappy to org.osgi.framework.system.packages in Karaf's 
config.properties, this should then satisfy the OrientDB bundle without having 
to patch it... as long as you make sure compression is set to "nothing" before 
starting the embedded database then nothing will attempt to load classes from 
this package, it's just a placeholder to satisfy the mandatory import. You 
could also create your own bundle that exports this package.

Also +1 on looking at org.iq80.snappy as a replacement going forwards - or at 
least making the org.xerial.snappy import optional instead of mandatory.

> Are there any plans to replace the org.xerial.snappy library with the 
> org.iq80.snappy version? Since the org.iq80.snappy version is pure java, you 
> could truly market OrientDB as platform independent. 
> 
> As it stands today, we weren't able to run even when trying to turn off the 
> compression... and from the code base it looks like there is little intention 
> to solve that (I guess I should submit a bug?). 
> I'd like to avoid having to fork the ODB repository to remove 
> com.xerial.snappy references so we can upgrade OrientDB.
> 
> Am I off-base on the goal to be platform independent? What is the benefit to 
> sticking with the org.xerial.snappy references in the code/manifest files?
> 
> Regards,
> 
> ~ Andrew
> 
> -- 
> 
> --- 
> You received this message because you are subscribed to the Google Groups 
> "OrientDB" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to