[ https://issues.apache.org/jira/browse/PHOENIX-15?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13891474#comment-13891474 ]
James Taylor commented on PHOENIX-15: ------------------------------------- I like your second idea: bq. Alternatively we could enforce that ALTER TABLE <t> SET disableWAL = false automatically flushes the table, since this is the really the only point in Phoenix where one would actually want to flush a table's memstores to disk. This could be done in MetaDataClient.addColumn(AddColumnStatement stmt), after the call to connection.getQueryServices().addColumn(). All HBase client calls need to be inside of ConnectionQueryServicesImpl, though. So we could either add a flushTable method to ConnectionQueryServices, or we could do the flush at the end of the ConnectionQueryServicesImpl.addColumn method. Once complication, though - we'd only want to do the flush if we're going from a disableWAL = true state to a disableWAL = false state. You could lookup in the tableMetaData passed through if we're setting it to false, but currently the default is to set it to false. Instead, we could set it to null if it's not provided as a property and then the check for finding it in the tableMetaData with a value of false would work. > Allow forcing a memstore flush for a table > ------------------------------------------ > > Key: PHOENIX-15 > URL: https://issues.apache.org/jira/browse/PHOENIX-15 > Project: Phoenix > Issue Type: Improvement > Reporter: Lars Hofhansl > > This is useful with PHOENIX-14. > I.e. one could do a "bulk load" without writing to the WAL, following by a > memstore flush in order to guarantee the data is on disk. > [~giacomotay...@gmail.com] suggested: ALTER SESSION FLUSH. And somehow we'd > need to indicate which table to flush. > This probably needs a bit more discussion. -- This message was sent by Atlassian JIRA (v6.1.5#6160)