federkasten / clucie Goto Github PK
View Code? Open in Web Editor NEWClojure for the Lucene
Clojure for the Lucene
Is there a way to get all stored documents?
The following code throws:
(ns example
(:require
[clucie.core :as clucie]
[clucie.analysis :as analysis]
[clucie.store :as store]))
(let [analyzer (analysis/standard-analyzer)
index-store (store/memory-store)
writer (store/store-writer index-store analyzer)
reader (store/store-reader index-store)])
error: org.apache.lucene.index.IndexNotFoundException: no segments* file found in RAMDirectory@f0183fc lockFactory=org.apache.lucene.store.SingleInstanceLockFactory@3b24c44e: files: [] (SegmentInfos.java:141)
I believe the issue is the reader is trying to read from the index that does not yet exist. I'm aware this may in fact be a lucene issue, but google doesn't show much.
When I try
(core/search index-store "beatles" 10 analyzer 0 5)
it gives me [java.lang.NullPointerException
. I reckon it is because of this line here which does not provide :current-key something
, which, consequently, stumbles upon (name nil).
Java 11, clojure 1.11.1, clucie 0.4.2
user> (require '[clucie.core :as core])
Execution error (ClassNotFoundException) at java.net.URLClassLoader/findClass (URLClassLoader.java:476).
org.apache.lucene.store.RAMDirectory
2. Unhandled clojure.lang.Compiler$CompilerException
Error compiling clucie/store.clj at (1:1)
#:clojure.error{:phase :execution,
:line 1,
:column 1,
:source "clucie/store.clj"}
Compiler.java: 7665 clojure.lang.Compiler/load
RT.java: 381 clojure.lang.RT/loadResourceScript
RT.java: 372 clojure.lang.RT/loadResourceScript
RT.java: 459 clojure.lang.RT/load
RT.java: 424 clojure.lang.RT/load
core.clj: 6161 clojure.core/load/fn
core.clj: 6160 clojure.core/load
core.clj: 6144 clojure.core/load
RestFn.java: 408 clojure.lang.RestFn/invoke
core.clj: 5933 clojure.core/load-one
core.clj: 5928 clojure.core/load-one
core.clj: 5975 clojure.core/load-lib/fn
core.clj: 5974 clojure.core/load-lib
core.clj: 5953 clojure.core/load-lib
RestFn.java: 142 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6016 clojure.core/load-libs
core.clj: 6000 clojure.core/load-libs
RestFn.java: 137 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6038 clojure.core/require
core.clj: 6038 clojure.core/require
RestFn.java: 482 clojure.lang.RestFn/invoke
core.clj: 1 clucie.core/eval74783/loading--auto--
core.clj: 1 clucie.core/eval74783
core.clj: 1 clucie.core/eval74783
Compiler.java: 7194 clojure.lang.Compiler/eval
Compiler.java: 7183 clojure.lang.Compiler/eval
Compiler.java: 7653 clojure.lang.Compiler/load
RT.java: 381 clojure.lang.RT/loadResourceScript
RT.java: 372 clojure.lang.RT/loadResourceScript
RT.java: 459 clojure.lang.RT/load
RT.java: 424 clojure.lang.RT/load
core.clj: 6161 clojure.core/load/fn
core.clj: 6160 clojure.core/load
core.clj: 6144 clojure.core/load
RestFn.java: 408 clojure.lang.RestFn/invoke
core.clj: 5933 clojure.core/load-one
core.clj: 5928 clojure.core/load-one
core.clj: 5975 clojure.core/load-lib/fn
core.clj: 5974 clojure.core/load-lib
core.clj: 5953 clojure.core/load-lib
RestFn.java: 142 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6016 clojure.core/load-libs
core.clj: 6000 clojure.core/load-libs
RestFn.java: 137 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6038 clojure.core/require
core.clj: 6038 clojure.core/require
RestFn.java: 408 clojure.lang.RestFn/invoke
REPL: 48 user/eval74779
REPL: 48 user/eval74779
Compiler.java: 7194 clojure.lang.Compiler/eval
Compiler.java: 7149 clojure.lang.Compiler/eval
core.clj: 3215 clojure.core/eval
core.clj: 3211 clojure.core/eval
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn/fn
AFn.java: 152 clojure.lang.AFn/applyToHelper
AFn.java: 144 clojure.lang.AFn/applyTo
core.clj: 667 clojure.core/apply
core.clj: 1990 clojure.core/with-bindings*
core.clj: 1990 clojure.core/with-bindings*
RestFn.java: 425 clojure.lang.RestFn/invoke
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn
main.clj: 437 clojure.main/repl/read-eval-print/fn
main.clj: 437 clojure.main/repl/read-eval-print
main.clj: 458 clojure.main/repl/fn
main.clj: 458 clojure.main/repl
main.clj: 368 clojure.main/repl
RestFn.java: 1523 clojure.lang.RestFn/invoke
interruptible_eval.clj: 84 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 56 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 152 nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
AFn.java: 22 clojure.lang.AFn/run
session.clj: 218 nrepl.middleware.session/session-exec/main-loop/fn
session.clj: 217 nrepl.middleware.session/session-exec/main-loop
AFn.java: 22 clojure.lang.AFn/run
Thread.java: 829 java.lang.Thread/run
1. Caused by java.lang.ClassNotFoundException
org.apache.lucene.store.RAMDirectory
URLClassLoader.java: 476 java.net.URLClassLoader/findClass
DynamicClassLoader.java: 69 clojure.lang.DynamicClassLoader/findClass
ClassLoader.java: 589 java.lang.ClassLoader/loadClass
DynamicClassLoader.java: 77 clojure.lang.DynamicClassLoader/loadClass
ClassLoader.java: 522 java.lang.ClassLoader/loadClass
Class.java: -2 java.lang.Class/forName0
Class.java: 398 java.lang.Class/forName
RT.java: 2209 clojure.lang.RT/classForName
RT.java: 2222 clojure.lang.RT/classForNameNonLoading
store.clj: 1 clucie.store/eval74789/loading--auto--
store.clj: 1 clucie.store/eval74789
store.clj: 1 clucie.store/eval74789
Compiler.java: 7194 clojure.lang.Compiler/eval
Compiler.java: 7183 clojure.lang.Compiler/eval
Compiler.java: 7653 clojure.lang.Compiler/load
RT.java: 381 clojure.lang.RT/loadResourceScript
RT.java: 372 clojure.lang.RT/loadResourceScript
RT.java: 459 clojure.lang.RT/load
RT.java: 424 clojure.lang.RT/load
core.clj: 6161 clojure.core/load/fn
core.clj: 6160 clojure.core/load
core.clj: 6144 clojure.core/load
RestFn.java: 408 clojure.lang.RestFn/invoke
core.clj: 5933 clojure.core/load-one
core.clj: 5928 clojure.core/load-one
core.clj: 5975 clojure.core/load-lib/fn
core.clj: 5974 clojure.core/load-lib
core.clj: 5953 clojure.core/load-lib
RestFn.java: 142 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6016 clojure.core/load-libs
core.clj: 6000 clojure.core/load-libs
RestFn.java: 137 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6038 clojure.core/require
core.clj: 6038 clojure.core/require
RestFn.java: 482 clojure.lang.RestFn/invoke
core.clj: 1 clucie.core/eval74783/loading--auto--
core.clj: 1 clucie.core/eval74783
core.clj: 1 clucie.core/eval74783
Compiler.java: 7194 clojure.lang.Compiler/eval
Compiler.java: 7183 clojure.lang.Compiler/eval
Compiler.java: 7653 clojure.lang.Compiler/load
RT.java: 381 clojure.lang.RT/loadResourceScript
RT.java: 372 clojure.lang.RT/loadResourceScript
RT.java: 459 clojure.lang.RT/load
RT.java: 424 clojure.lang.RT/load
core.clj: 6161 clojure.core/load/fn
core.clj: 6160 clojure.core/load
core.clj: 6144 clojure.core/load
RestFn.java: 408 clojure.lang.RestFn/invoke
core.clj: 5933 clojure.core/load-one
core.clj: 5928 clojure.core/load-one
core.clj: 5975 clojure.core/load-lib/fn
core.clj: 5974 clojure.core/load-lib
core.clj: 5953 clojure.core/load-lib
RestFn.java: 142 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6016 clojure.core/load-libs
core.clj: 6000 clojure.core/load-libs
RestFn.java: 137 clojure.lang.RestFn/applyTo
core.clj: 669 clojure.core/apply
core.clj: 6038 clojure.core/require
core.clj: 6038 clojure.core/require
RestFn.java: 408 clojure.lang.RestFn/invoke
REPL: 48 user/eval74779
REPL: 48 user/eval74779
Compiler.java: 7194 clojure.lang.Compiler/eval
Compiler.java: 7149 clojure.lang.Compiler/eval
core.clj: 3215 clojure.core/eval
core.clj: 3211 clojure.core/eval
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn/fn
AFn.java: 152 clojure.lang.AFn/applyToHelper
AFn.java: 144 clojure.lang.AFn/applyTo
core.clj: 667 clojure.core/apply
core.clj: 1990 clojure.core/with-bindings*
core.clj: 1990 clojure.core/with-bindings*
RestFn.java: 425 clojure.lang.RestFn/invoke
interruptible_eval.clj: 87 nrepl.middleware.interruptible-eval/evaluate/fn
main.clj: 437 clojure.main/repl/read-eval-print/fn
main.clj: 437 clojure.main/repl/read-eval-print
main.clj: 458 clojure.main/repl/fn
main.clj: 458 clojure.main/repl
main.clj: 368 clojure.main/repl
RestFn.java: 1523 clojure.lang.RestFn/invoke
interruptible_eval.clj: 84 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 56 nrepl.middleware.interruptible-eval/evaluate
interruptible_eval.clj: 152 nrepl.middleware.interruptible-eval/interruptible-eval/fn/fn
AFn.java: 22 clojure.lang.AFn/run
session.clj: 218 nrepl.middleware.session/session-exec/main-loop/fn
session.clj: 217 nrepl.middleware.session/session-exec/main-loop
AFn.java: 22 clojure.lang.AFn/run
Thread.java: 829 java.lang.Thread/run
https://github.com/federkasten/clucie/blob/master/src/clucie/query.clj#L68
does this mean that regex search is implemented, or that this is a starting point for beginning to implement that functionality?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.