[ https://issues.apache.org/jira/browse/LUCENE-2818?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12972764#action_12972764 ]
Earwin Burrfoot commented on LUCENE-2818: ----------------------------------------- bq. Can abort() have a default impl in IndexOutput, such as close() followed by deleteFile() maybe? If so, then it won't break anything. It can't. To call deleteFile you need both a reference to papa-Directory and a name of the file this IO writes to. Abstract IO class has neither. If we add them, they have to be passed to a new constructor, and that's an API break ;) bq. Would abort() on Directory fit better? E.g., it can abort all currently open and modified files, instead of the caller calling abort() on each IndexOutput? Are you thinking of a case where a write failed, and the caller would call abort() immediately, instead of some higher-level code? If so, would rollback() be a better name? Oh, no, no. No way. I don't want to push someone else's responsibility on Directory. This abort() is merely a shortcut. Let's go with a usage example: Here's FieldsWriter.java with LUCENE-2814 applied (skipping irrelevant parts) - https://gist.github.com/746358 Now, the same, with abort() - https://gist.github.com/746367 > abort() method for IndexOutput > ------------------------------ > > Key: LUCENE-2818 > URL: https://issues.apache.org/jira/browse/LUCENE-2818 > Project: Lucene - Java > Issue Type: Improvement > Reporter: Earwin Burrfoot > > I'd like to see abort() method on IndexOutput that silently (no exceptions) > closes IO and then does silent papaDir.deleteFile(this.fileName()). > This will simplify a bunch of error recovery code for IndexWriter and > friends, but constitutes an API backcompat break. > What do you think? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org