Skip to content
This repository was archived by the owner on May 12, 2021. It is now read-only.

Conversation

takezoe
Copy link
Member

@takezoe takezoe commented Jun 13, 2017

No description provided.

@dszeto
Copy link
Contributor

dszeto commented Jun 16, 2017

@takezoe LGTM. Mind also updating the documentation in this PR to reflect the new minimum requirement (http://predictionio.incubator.apache.org/install/)?

@takezoe
Copy link
Member Author

takezoe commented Jun 19, 2017

@dszeto Documentation updated.

@pferrel
Copy link
Contributor

pferrel commented Jun 21, 2017

Is this update really required to use HBase 1.2.6? It looks like the APIs have changed without deprecate warnings. Is this true?

@pferrel
Copy link
Contributor

pferrel commented Jun 21, 2017

Actually we already have an AWS AMI with HBase 1.2.6 that works fine without any changes as far as we have seen and we do run automated tests.

Since this will require that all users of PIO upgrade hbase, why are we doing this?

@takezoe
Copy link
Member Author

takezoe commented Jun 21, 2017

@pferrel Following methods have been deprecated since HBase 1.0.0. Since they are still alive in HBase 1.2.6 current code works fine with 1.2.6.

I think it's not necessary to merge this request soon, but HBase 0.98 hasn't been maintained in fact. So we should lead users to upgrade to maintained versions. At first, we should announce the plan of supported versions and drop old versions after a sufficient transition period. Maybe we should do it after graduation the incubator. I would like to keep this changes keeps until that time.

But I think that there is no problem to upgrade HBase dependency to 1.2.6 from 0.98, so I will create another pull request to only do it.

[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBEventsUtil.scala:167: method add in class Put is deprecated: see corresponding Javadoc for more information.
[warn]       put.add(eBytes, col, Bytes.toBytes(v))
[warn]           ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBEventsUtil.scala:171: method add in class Put is deprecated: see corresponding Javadoc for more information.
[warn]       put.add(eBytes, col, Bytes.toBytes(v))
[warn]           ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBLEvents.scala:45: trait HTableInterface in package client is deprecated: see corresponding Javadoc for more information.
[warn]   def getTable(appId: Int, channelId: Option[Int] = None): HTableInterface =
[warn]                                                            ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBLEvents.scala:106: method flushCommits in trait HTableInterface is deprecated: see corresponding Javadoc for more information.
[warn]       table.flushCommits()
[warn]             ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBLEvents.scala:120: method flushCommits in trait HTableInterface is deprecated: see corresponding Javadoc for more information.
[warn]       table.flushCommits()
[warn]             ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/HBPEvents.scala:122: constructor HTable in class HTable is deprecated: see corresponding Javadoc for more information.
[warn]       val table = new HTable(conf, tableName)
[warn]                   ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/StorageClient.scala:36: trait HConnection in package client is deprecated: see corresponding Javadoc for more information.
[warn]   val connection: HConnection,
[warn]                   ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/StorageClient.scala:34: trait HConnection in package client is deprecated: see corresponding Javadoc for more information.
[warn] case class HBClient(
[warn]            ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/StorageClient.scala:76: method createConnection in object HConnectionManager is deprecated: see corresponding Javadoc for more information.
[warn]   val connection = HConnectionManager.createConnection(conf)
[warn]                                       ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/StorageClient.scala:81: constructor HBaseAdmin in class HBaseAdmin is deprecated: see corresponding Javadoc for more information.
[warn]     admin = new HBaseAdmin(connection)
[warn]             ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/upgrade/HB_0_8_0.scala:51: trait HConnection in package client is deprecated: see corresponding Javadoc for more information.
[warn]     connection: HConnection,
[warn]                 ^
[warn] /Users/naoki.takezoe/incubator-predictionio/storage/hbase/src/main/scala/org/apache/predictionio/data/storage/hbase/upgrade/Upgrade.scala:70: method flushCommits in trait HTableInterface is deprecated: see corresponding Javadoc for more information.
[warn]     newTable.flushCommits()
[warn]              ^
[warn] 12 warnings found

@takezoe
Copy link
Member Author

takezoe commented Jun 21, 2017

#395

@takezoe takezoe changed the title [PIO-92] Bump HBase to 1.2.6 [PIO-92] Bump HBase to 1.2.6 (and fix deprecation warnings) Jun 21, 2017
@takezoe
Copy link
Member Author

takezoe commented Jun 21, 2017

@pferrel and I found 3 versions of HBase at least in build.sbt and documentation, so I'm not sure what versions are supported in the current PredictionIIO.

It is inconsistent. What's state that should be originally?

@takezoe
Copy link
Member Author

takezoe commented Jun 26, 2017

@dszeto @pferrel How about keeping current code but update the prerequisites section of installation guide to clarify supported versions?

About HBase, PIO supports 0.98.5 or higher, I will make a table of supported versions in the prerequisites section of document and write this in that table with other software versions.
In addition, I would like to update the installation guide to use the newest supported version (1.2.6 in HBase) for all softwares as well as HBase.

Is this alright?

@dszeto
Copy link
Contributor

dszeto commented Jun 27, 2017

Sorry for the late reply. Agree we should start properly deprecating it. Regarding the inconsistency, I think we should correct 0.98.6 in https://predictionio.incubator.apache.org/install/, and indicate right now 0.98.5 is the minimum compatible version, but it is deprecated. I think it is okay to keep a more recent HBase version in the installation instructions though, so that new users do not install an EOMed version of HBase. Thoughts?

@takezoe
Copy link
Member Author

takezoe commented Jun 28, 2017

@dszeto Thanks for your support. I updated docs in e3f8307 so close this pull request and PIO-92. I will raise a new ticket to clarify supported versions and recommended versions in docs, and continue to work on that ticket.

@takezoe takezoe closed this Jun 28, 2017
@takezoe takezoe deleted the hbase_upgrade branch July 10, 2017 04:58
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants