내 웹 응용 프로그램에 대한 다중 스레드를 실행하면 내가 얻을 :은 [SQLITE_BUSY] 데이터베이스 파일을 선택 문
java.sql.SQLException: [SQLITE_BUSY] The database file is locked (database is locked)
at org.sqlite.DB.newSQLException(DB.java:383)
at org.sqlite.DB.newSQLException(DB.java:387)
at org.sqlite.DB.execute(DB.java:339)
at org.sqlite.PrepStmt.executeQuery(PrepStmt.java:75)
at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
나는 오직 하나 개의 스레드가 sqlite가 데이터베이스에 기록 할 수 있다는 것을 알고 있지만 난 데이터베이스에서 읽기만 가능합니다. 그렇다면이 오류 메시지가 나타나는 이유는 무엇입니까?
은 BTW : 내 연결 풀은 다음과 같습니다
<bean class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close" id="dataSource">
<property name="driverClassName" value="${database.driverClassName}" />
<property name="url" value="${database.url}" />
<property name="username" value="${database.username}" />
<property name="password" value="${database.password}" />
<property name="initialSize" value="1" />
<property name="maxActive" value="2" />
<property name="maxIdle" value="1" />
<property name="poolPreparedStatements" value="true" />
</bean>
셋업이 : 자바 1.6, 톰캣 7.0.34, 봄 3.2, 3.6.9 및 sqlite3를 3.7.2
감사 최대 절전 모드 Roger
가능한 복제본 [SQLITE \ _BUSY] 데이터베이스 파일이 잠김 (데이터베이스가 잠김) wicket] (http://stackoverflow.com/questions/8559623/sqlite-busy-the-database-file-is-locked- 데이터베이스가 잠겨 있음) – Stephan