You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ch...@apache.org on 2017/03/25 16:08:29 UTC
hbase git commit: HBASE-13395 Removed HTableInterface
Repository: hbase
Updated Branches:
refs/heads/master 6bd310906 -> 50e982513
HBASE-13395 Removed HTableInterface
Signed-off-by: CHIA-PING TSAI <ch...@gmail.com>
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/50e98251
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/50e98251
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/50e98251
Branch: refs/heads/master
Commit: 50e9825139d9abfd280eb7a930c8c6a96e9e68a6
Parents: 6bd3109
Author: Jan Hentschel <ja...@ultratendency.com>
Authored: Fri Nov 18 23:53:36 2016 +0100
Committer: CHIA-PING TSAI <ch...@gmail.com>
Committed: Sun Mar 26 00:04:21 2017 +0800
----------------------------------------------------------------------
.../hbase/client/ConnectionImplementation.java | 4 +-
.../hadoop/hbase/client/HTableInterface.java | 138 -------------------
src/main/asciidoc/_chapters/architecture.adoc | 8 +-
src/main/asciidoc/_chapters/cp.adoc | 3 +-
src/main/asciidoc/_chapters/unit_testing.adoc | 38 ++---
5 files changed, 25 insertions(+), 166 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/50e98251/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java
index adf1496..99feb14 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/ConnectionImplementation.java
@@ -170,10 +170,10 @@ class ConnectionImplementation implements ClusterConnection, Closeable {
// be waiting for the master lock => deadlock.
private final Object masterAndZKLock = new Object();
- // thread executor shared by all HTableInterface instances created
+ // thread executor shared by all Table instances created
// by this connection
private volatile ExecutorService batchPool = null;
- // meta thread executor shared by all HTableInterface instances created
+ // meta thread executor shared by all Table instances created
// by this connection
private volatile ExecutorService metaLookupPool = null;
private volatile boolean cleanupPool = false;
http://git-wip-us.apache.org/repos/asf/hbase/blob/50e98251/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableInterface.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableInterface.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableInterface.java
deleted file mode 100644
index 9d41218..0000000
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/client/HTableInterface.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/**
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.hadoop.hbase.client;
-
-import java.io.IOException;
-
-import org.apache.hadoop.hbase.classification.InterfaceAudience;
-import org.apache.hadoop.hbase.classification.InterfaceStability;
-
-/**
- * Used to communicate with a single HBase table.
- * Obtain an instance from a {@link Connection}.
- *
- * @since 0.21.0
- * @deprecated use {@link org.apache.hadoop.hbase.client.Table} instead
- */
-@Deprecated
-@InterfaceAudience.Private
-@InterfaceStability.Stable
-public interface HTableInterface extends Table {
-
- /**
- * Gets the name of this table.
- *
- * @return the table name.
- * @deprecated Use {@link #getName()} instead
- */
- @Deprecated
- byte[] getTableName();
-
- /**
- * Turns 'auto-flush' on or off.
- * <p>
- * When enabled (default), {@link Put} operations don't get buffered/delayed
- * and are immediately executed. Failed operations are not retried. This is
- * slower but safer.
- * <p>
- * Turning off {@code #autoFlush} means that multiple {@link Put}s will be
- * accepted before any RPC is actually sent to do the write operations. If the
- * application dies before pending writes get flushed to HBase, data will be
- * lost.
- * <p>
- * When you turn {@code #autoFlush} off, you should also consider the
- * {@code #clearBufferOnFail} option. By default, asynchronous {@link Put}
- * requests will be retried on failure until successful. However, this can
- * pollute the writeBuffer and slow down batching performance. Additionally,
- * you may want to issue a number of Put requests and call
- * {@link #flushCommits()} as a barrier. In both use cases, consider setting
- * clearBufferOnFail to true to erase the buffer after {@link #flushCommits()}
- * has been called, regardless of success.
- * <p>
- * In other words, if you call {@code #setAutoFlush(false)}; HBase will retry N time for each
- * flushCommit, including the last one when closing the table. This is NOT recommended,
- * most of the time you want to call {@code #setAutoFlush(false, true)}.
- *
- * @param autoFlush
- * Whether or not to enable 'auto-flush'.
- * @param clearBufferOnFail
- * Whether to keep Put failures in the writeBuffer. If autoFlush is true, then
- * the value of this parameter is ignored and clearBufferOnFail is set to true.
- * Setting clearBufferOnFail to false is deprecated since 0.96.
- * @deprecated in 0.99 since setting clearBufferOnFail is deprecated.
- * @see BufferedMutator#flush()
- */
- @Deprecated
- void setAutoFlush(boolean autoFlush, boolean clearBufferOnFail);
-
- /**
- * Set the autoFlush behavior, without changing the value of {@code clearBufferOnFail}.
- * @deprecated in 0.99 since setting clearBufferOnFail is deprecated. Move on to
- * {@link BufferedMutator}
- */
- @Deprecated
- void setAutoFlushTo(boolean autoFlush);
-
- /**
- * Tells whether or not 'auto-flush' is turned on.
- *
- * @return {@code true} if 'auto-flush' is enabled (default), meaning
- * {@link Put} operations don't get buffered/delayed and are immediately
- * executed.
- * @deprecated as of 1.0.0. Replaced by {@link BufferedMutator}
- */
- @Deprecated
- boolean isAutoFlush();
-
- /**
- * Executes all the buffered {@link Put} operations.
- * <p>
- * This method gets called once automatically for every {@link Put} or batch
- * of {@link Put}s (when <code>put(List<Put>)</code> is used) when
- * {@link #isAutoFlush} is {@code true}.
- * @throws IOException if a remote or network exception occurs.
- * @deprecated as of 1.0.0. Replaced by {@link BufferedMutator#flush()}
- */
- @Deprecated
- void flushCommits() throws IOException;
-
- /**
- * Returns the maximum size in bytes of the write buffer for this HTable.
- * <p>
- * The default value comes from the configuration parameter
- * {@code hbase.client.write.buffer}.
- * @return The size of the write buffer in bytes.
- * @deprecated as of 1.0.0. Replaced by {@link BufferedMutator#getWriteBufferSize()}
- */
- @Deprecated
- long getWriteBufferSize();
-
- /**
- * Sets the size of the buffer in bytes.
- * <p>
- * If the new size is less than the current amount of data in the
- * write buffer, the buffer gets flushed.
- * @param writeBufferSize The new write buffer size, in bytes.
- * @throws IOException if a remote or network exception occurs.
- * @deprecated as of 1.0.0. Replaced by {@link BufferedMutator} and
- * {@link BufferedMutatorParams#writeBufferSize(long)}
- */
- @Deprecated
- void setWriteBufferSize(long writeBufferSize) throws IOException;
-}
http://git-wip-us.apache.org/repos/asf/hbase/blob/50e98251/src/main/asciidoc/_chapters/architecture.adoc
----------------------------------------------------------------------
diff --git a/src/main/asciidoc/_chapters/architecture.adoc b/src/main/asciidoc/_chapters/architecture.adoc
index 9768c96..773d237 100644
--- a/src/main/asciidoc/_chapters/architecture.adoc
+++ b/src/main/asciidoc/_chapters/architecture.adoc
@@ -227,8 +227,6 @@ try (Connection connection = ConnectionFactory.createConnection(conf)) {
----
====
-Constructing HTableInterface implementation is very lightweight and resources are controlled.
-
.`HTablePool` is Deprecated
[WARNING]
====
@@ -398,7 +396,7 @@ Example: Find all columns in a row and family that start with "abc"
[source,java]
----
-HTableInterface t = ...;
+Table t = ...;
byte[] row = ...;
byte[] family = ...;
byte[] prefix = Bytes.toBytes("abc");
@@ -428,7 +426,7 @@ Example: Find all columns in a row and family that start with "abc" or "xyz"
[source,java]
----
-HTableInterface t = ...;
+Table t = ...;
byte[] row = ...;
byte[] family = ...;
byte[][] prefixes = new byte[][] {Bytes.toBytes("abc"), Bytes.toBytes("xyz")};
@@ -463,7 +461,7 @@ Example: Find all columns in a row and family between "bbbb" (inclusive) and "bb
[source,java]
----
-HTableInterface t = ...;
+Table t = ...;
byte[] row = ...;
byte[] family = ...;
byte[] startColumn = Bytes.toBytes("bbbb");
http://git-wip-us.apache.org/repos/asf/hbase/blob/50e98251/src/main/asciidoc/_chapters/cp.adoc
----------------------------------------------------------------------
diff --git a/src/main/asciidoc/_chapters/cp.adoc b/src/main/asciidoc/_chapters/cp.adoc
index 47f92bb..d3fcd47 100644
--- a/src/main/asciidoc/_chapters/cp.adoc
+++ b/src/main/asciidoc/_chapters/cp.adoc
@@ -180,8 +180,7 @@ In contrast to observer coprocessors, where your code is run transparently, endp
coprocessors must be explicitly invoked using the
link:https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/client/Table.html#coprocessorService%28java.lang.Class,%20byte%5B%5D,%20byte%5B%5D,%20org.apache.hadoop.hbase.client.coprocessor.Batch.Call%29[CoprocessorService()]
method available in
-link:https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/client/Table.html[Table],
-link:https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/client/HTableInterface.html[HTableInterface],
+link:https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/client/Table.html[Table]
or
link:https://hbase.apache.org/devapidocs/org/apache/hadoop/hbase/client/HTable.html[HTable].
http://git-wip-us.apache.org/repos/asf/hbase/blob/50e98251/src/main/asciidoc/_chapters/unit_testing.adoc
----------------------------------------------------------------------
diff --git a/src/main/asciidoc/_chapters/unit_testing.adoc b/src/main/asciidoc/_chapters/unit_testing.adoc
index 0c4d812..6131d5a 100644
--- a/src/main/asciidoc/_chapters/unit_testing.adoc
+++ b/src/main/asciidoc/_chapters/unit_testing.adoc
@@ -295,28 +295,28 @@ public class MyHBaseIntegrationTest {
@Before
public void setup() throws Exception {
- utility = new HBaseTestingUtility();
- utility.startMiniCluster();
+ utility = new HBaseTestingUtility();
+ utility.startMiniCluster();
}
@Test
- public void testInsert() throws Exception {
- HTableInterface table = utility.createTable(Bytes.toBytes("MyTest"), CF);
- HBaseTestObj obj = new HBaseTestObj();
- obj.setRowKey("ROWKEY-1");
- obj.setData1("DATA-1");
- obj.setData2("DATA-2");
- MyHBaseDAO.insertRecord(table, obj);
- Get get1 = new Get(Bytes.toBytes(obj.getRowKey()));
- get1.addColumn(CF, CQ1);
- Result result1 = table.get(get1);
- assertEquals(Bytes.toString(result1.getRow()), obj.getRowKey());
- assertEquals(Bytes.toString(result1.value()), obj.getData1());
- Get get2 = new Get(Bytes.toBytes(obj.getRowKey()));
- get2.addColumn(CF, CQ2);
- Result result2 = table.get(get2);
- assertEquals(Bytes.toString(result2.getRow()), obj.getRowKey());
- assertEquals(Bytes.toString(result2.value()), obj.getData2());
+ public void testInsert() throws Exception {
+ Table table = utility.createTable(Bytes.toBytes("MyTest"), CF);
+ HBaseTestObj obj = new HBaseTestObj();
+ obj.setRowKey("ROWKEY-1");
+ obj.setData1("DATA-1");
+ obj.setData2("DATA-2");
+ MyHBaseDAO.insertRecord(table, obj);
+ Get get1 = new Get(Bytes.toBytes(obj.getRowKey()));
+ get1.addColumn(CF, CQ1);
+ Result result1 = table.get(get1);
+ assertEquals(Bytes.toString(result1.getRow()), obj.getRowKey());
+ assertEquals(Bytes.toString(result1.value()), obj.getData1());
+ Get get2 = new Get(Bytes.toBytes(obj.getRowKey()));
+ get2.addColumn(CF, CQ2);
+ Result result2 = table.get(get2);
+ assertEquals(Bytes.toString(result2.getRow()), obj.getRowKey());
+ assertEquals(Bytes.toString(result2.value()), obj.getData2());
}
}
----