[ 
http://issues.apache.org/jira/browse/DERBY-555?page=comments#action_12330529 ] 

Suresh Thalamati commented on DERBY-555:
----------------------------------------

Hi Øystein, 

Tested your patch ,  it looks good .    I have couple of minor questions,   
related to the  new error message  :
Database located at C:\suresht\databases\wombat has been booted in READ ONLY mod
e. This will occur when the database is located in a jar file.  This may also ha
ppen when Derby is not able to write to the database directory; either because i
t does not have the required access rights or because the disk is full.

1) New Message added will be displayed  on  every boot  from a read only media 
,  Not sure if 
this  will be  annoying to  the users who are booting  derby  from a read-only 
media ?  

2) Above Message added will never be  displayed  when booted from a JAR file.   
reference to jar in read-only mode ("... This will occur when the database is 
located in a jar file ...) may not be needed. 

--

How about modifying the general boot message to indicate that  the database is 
booted in  read-only mode ? and  document the special case of disk full 
scenario some where ? 

I agree with you that  there is no simple way to write a disk full test cases 
that can be added to nightly runs.  But if you have a test case ,  I  think  it 
might be  good idea  to  create special  ad-hoc test   directory and put it 
there ,   so that some one interested can run them manually  at the time of a  
release.
 
On a quick scan through the docs,  found   a section  "Booting databases"  
section in the Developers 
guide("http://db.apache.org/derby/docs/10.1/devguide/) ; may be we can mention 
the disk full read-only boot  special case there as a note. 

Thanks
-suresht


> Unable to restart after disk is full
> ------------------------------------
>
>          Key: DERBY-555
>          URL: http://issues.apache.org/jira/browse/DERBY-555
>      Project: Derby
>         Type: Bug
>   Components: Store
>     Versions: 10.2.0.0
>  Environment: Sun Sparc Solaris, 1.4 JDK, Derby Client/Server
>     Reporter: Øystein Grøvlen
>     Assignee: Øystein Grøvlen
>     Priority: Critical
>  Attachments: derby-555.diff
>
> 1. Inserted data into the database until the disk was full. (5 clients 
> inserting into 5 different tables in parallel.)
> 2. Shut down the server
> 3. Start the database again without freeing any disk space.
> When I try to start the database again, I get Null-pointer-exception, 
> regardless of how I connect (have tried embedded, client server, ij, jdbc 
> applications).  I have not tried to free some space on the disk before 
> starting.  
> The call stack is not available right now (the computer I used had to be shut 
> down due to problems with our cooling system), but the exception comes from 
> the following line in RawStore.java:
>      properties.put(Attribute.LOG_DEVICE, logFactory.getCanonicalLogPath());
> getCanonicalLogPath() returns null which results in a NPE in the hash table.
> A quick debug before the computer was stopped, showed that the logFactory was 
> an instance of org.apache.derby.impl.store.raw.log.ReadOnly which always 
> returns null in its  getCanonicalLogPath().
> I suspect this may be related to the fact that I ran with the log in a 
> non-default location.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to