Hey Mark

we use {OpenGrok 0.11.1 in production inside Oracle
with OpenGrok script which enables derby successfully so this is most probably a misconfig

simply (this is for Solaris 11, adapt to your OS please, read javadb docs) setup javadb server(this are default ports, refer to OpenGrok readme where we connect by default or how to change it): zfs create -o mountpoint=/var/lib/javadb/data <PATH_TO_OPENGROK_INSTANCE>/data/javadb
chmod 700 /var/lib/javadb/data
chown noaccess:noaccess /var/lib/javadb/data
svcadm enable javadb

now get the needed jar for webapp and indexer, optimize javadb for huge repos(all this is in OpenGrok readme):
  cp /opt/SUNWjavadb/lib/derbyclient.jar \
/var/tmp/opengrok-0.11/lib/
  echo "derby.storage.pageCacheSize=25000" > \
      /var/lib/javadb/data/derby.properties


start the indexer(note the OPENGROK_DERBY=true, replace paths to suit your env, get rid of read only config if you don't use it):
export WS_DIR=/ws-local
export DIST_DIR=/var/tmp/opengrok-0.11
export OPENGROK_DISTRIBUTION_BASE=$DIST_DIR/lib
LEADING_WILDCARD="-a on" \
OPENGROK_DERBY=true \
READ_XML_CONFIGURATION=/opengrok-0.11/config/readonly_configuration.xml \
OPENGROK_INSTANCE_BASE=/opengrok-0.11 \
    $DIST_DIR/bin/OpenGrok \
    index $WS_DIR

before starting the webapp update the webapp with jars:
(copy the Java DB client library to the webapp and the final indexer dir)

  cp /opt/SUNWjavadb/lib/derbyclient.jar \
/var/tomcat6/webapps/source/WEB-INF/lib/
  cp /opt/SUNWjavadb/lib/derbyclient.jar \
      /usr/opengrok/lib
 - this is for indexer
  cp /opt/SUNWjavadb/lib/derbyclient.jar \
/usr/tomcat6/lib/
- this technically replaces above source webapp update, since all apps should then be able to access derbyclient.jar in their classpath

I hope we can integrate tighter with javadb soon, so OpenGrok script will do most of above out of box (pending changes when I will integrate tika, just need to get time for this ... :( )


also if I sound too chaotic, go and do step by step setup from Readme and use OpenGrok, if it won't make sense still and you figure it out, let me know how to improve readme so people without bias can use them better

cheers
L

Ref. :
http://src.opensolaris.org/source/xref/opengrok/trunk/OpenGrok
http://src.opensolaris.org/source/xref/opengrok/trunk/README.txt

On 22.6.2012 9:18, Clements Mark wrote:
Hi,

Jens:  thanks for the suggestion.

Looks like /BUILD/spool is a symlink to /BUILD/environments_nolog2/spool ?
Any changes, if you index /BUILD/environments_nolog2/spool ... directly ?
  Alas, it doesn't appear to change anything.

APP@derby:localhost> select count(*) from REPOSITORIES ;
---+
  1 |
---+
  0 |


However - that has got me to notice that the ant task that writes out the 
configuration produces this:

buildconf:
      [echo] write config
  [opengrok] 22 juin 2012 08:57:51 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Scanning for repositories...
  [opengrok] 22 juin 2012 08:57:51 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Done scanning for repositories (0s)
  [opengrok] 22 juin 2012 08:57:51 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Writing configuration to 
/BUILD/environments_nolog2/spool/data/opengrok/conf/configuration-HEAD.xml
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.ClearCaseRepository", 
"cleartool");
  [opengrok] Continue...
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.PerforceRepository", 
"p4");
  [opengrok] Continue...
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.CVSRepository", 
"/opt/freeware/bin/cvs");
  [opengrok] Continue...
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.ClearCaseRepository", 
"cleartool");
  [opengrok] Continue...
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.PerforceRepository", 
"p4");
  [opengrok] Continue...
  [opengrok] Exception during encoding:java.lang.Exception: failed to write statement: 
Collections$UnmodifiableMap.put("org.opensolaris.opengrok.history.CVSRepository", 
"/opt/freeware/bin/cvs");
  [opengrok] Continue...
  [opengrok] 22 juin 2012 08:57:52 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Done...
  [opengrok] 22 juin 2012 08:57:52 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Generating history cache for all repositories ...
  [opengrok] 22 juin 2012 08:57:52 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Done...

I'm wondering if the exceptions are significant. The indexing process then goes 
on to spit out

index:
      [echo] build index
  [opengrok] java.lang.UnsupportedOperationException
  [opengrok]       at 
java.util.Collections$UnmodifiableMap.put(Collections.java:1346)
  [opengrok]       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)
  [opengrok]       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
  [opengrok]       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  [opengrok]       at java.lang.reflect.Method.invoke(Method.java:600)
  [opengrok]       at java.beans.Statement.invokeMethodImpl(Statement.java:258)
  [opengrok]       at java.beans.Statement.access$000(Statement.java:45)
  [opengrok]       at java.beans.Statement$1.run(Statement.java:135)
  [opengrok]       at 
java.security.AccessController.doPrivileged(AccessController.java:284)
  [opengrok]       at java.beans.Statement.invokeMethod(Statement.java:132)
  [opengrok]       at java.beans.Expression.getValue(Expression.java:71)
  [opengrok]       at 
java.beans.XMLDecoder$SAXHandler.executeCommon(XMLDecoder.java:373)
  [opengrok]       at 
java.beans.XMLDecoder$SAXHandler.execute(XMLDecoder.java:302)
  [opengrok]       at 
java.beans.XMLDecoder$SAXHandler.endElement(XMLDecoder.java:267)
  [opengrok]       at 
org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
  [opengrok]       at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown 
Source)
  [opengrok]       at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown
 Source)
  [opengrok]       at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)
  [opengrok]       at 
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
  [opengrok]       at 
org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
  [opengrok]       at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
  [opengrok]       at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown 
Source)
  [opengrok]       at 
org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
  [opengrok]       at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source)
  [opengrok]       at javax.xml.parsers.SAXParser.parse(Unknown Source)
  [opengrok]       at java.beans.XMLDecoder.readObject(XMLDecoder.java:629)
  [opengrok]       at 
org.opensolaris.opengrok.configuration.Configuration.decodeObject(Configuration.java:703)
  [opengrok]       at 
org.opensolaris.opengrok.configuration.Configuration.read(Configuration.java:686)
  [opengrok]       at 
org.opensolaris.opengrok.index.Indexer.main(Indexer.java:133)

6 times

Before continuing...

[opengrok] Continue...
  [opengrok] Logging filehandler pattern: %h/java%u.log
  [opengrok] 22 juin 2012 08:58:02 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Scanning for repositories...
  [opengrok] 22 juin 2012 08:58:02 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Done scanning for repositories (0s)
  [opengrok] 22 juin 2012 08:58:02 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Generating history cache for all repositories ...
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.history.HistoryGuru 
createCache
  [opengrok] INFO: Create historycache for 
/BUILD/environments_nolog2/spool/data/opengrok/checkout/HEAD (CVSRepository)
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.history.HistoryGuru 
createCache
  [opengrok] INFO: Creating historycache for 
/BUILD/environments_nolog2/spool/data/opengrok/checkout/HEAD took (1ms)
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.index.Indexer 
prepareIndexer
  [opengrok] INFO: Done...
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.index.Indexer 
doIndexerExecution
  [opengrok] INFO: Starting indexing
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.history.HistoryGuru 
createCache
  [opengrok] INFO: Create historycache for 
/BUILD/environments_nolog2/spool/data/opengrok/checkout/HEAD (CVSRepository)
  [opengrok] 22 juin 2012 08:58:03 org.opensolaris.opengrok.history.HistoryGuru 
createCache
  [opengrok] INFO: Creating historycache for 
/BUILD/environments_nolog2/spool/data/opengrok/checkout/HEAD took (1ms)
  [opengrok] 22 juin 2012 08:58:31 
org.opensolaris.opengrok.index.DefaultIndexChangedListener fileAdd
  [opengrok] INFO: Add: ................................ list of files

If I use -K to list the repositories (it makes no difference if I go via the 
symlink /BUILD/spool/data or not):

java  org.opensolaris.opengrok.index.Indexer -s 
/BUILD/spool/data/opengrok/checkout/HEAD   -K  -d 
/BUILD/spool/data/opengrok/staging/HEAD  -c /BUILD/local/apps/ctags/bin/ctags  
-z -1
22 juin 2012 09:13:14 org.opensolaris.opengrok.index.Indexer prepareIndexer
INFO: Scanning for repositories...
22 juin 2012 09:13:14 org.opensolaris.opengrok.index.Indexer prepareIndexer
INFO: Done scanning for repositories (0s)
Repositories in /BUILD/environments_nolog2/spool/data/opengrok/checkout/HEAD:


If I modify -s to remove "HEAD":

java  org.opensolaris.opengrok.index.Indexer -s 
/BUILD/spool/data/opengrok/checkout/   -K  -d 
/BUILD/spool/data/opengrok/staging/HEAD  -c /BUILD/local/apps/ctags/bin/ctags  
-z -1
22 juin 2012 09:13:01 org.opensolaris.opengrok.index.Indexer prepareIndexer
INFO: Scanning for repositories...
22 juin 2012 09:13:01 org.opensolaris.opengrok.index.Indexer prepareIndexer
INFO: Done scanning for repositories (0s)
No repositories found.

Thanks again.

Mark
_______________________________________________
opengrok-discuss mailing list
opengrok-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opengrok-discuss


_______________________________________________
opengrok-discuss mailing list
opengrok-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/opengrok-discuss

Reply via email to