question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Table.exists hangs

See original GitHub issue

I’ve a Bigtable client that connects to a local emulator. Lately it has started hanging on table.exists - the only thing that was updated recently was the emulator itself via apt. A thread dump reveals (client class names snipped at the bottom)

"main" #1 prio=5 os_prio=0 tid=0x00007ff678010000 nid=0x67c2 waiting on condition [0x00007ff67f143000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000007441b7ad0> (a com.google.cloud.bigtable.grpc.async.AbstractRetryingOperation$GrpcFuture)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:469)
	at com.google.cloud.bigtable.grpc.async.AbstractRetryingOperation.getBlockingResult(AbstractRetryingOperation.java:293)
	at com.google.cloud.bigtable.grpc.BigtableDataGrpcClient.readFlatRowsList(BigtableDataGrpcClient.java:327)
	at com.google.cloud.bigtable.hbase.BigtableTable.getResults(BigtableTable.java:257)
	at com.google.cloud.bigtable.hbase.BigtableTable.exists(BigtableTable.java:166)
..........

Subsequent thread dumps taken at 30 second intervals reveals the the thread is stuck at the same place.

After about 12 minutes, I get the following error -

java.io.IOException: Failed to perform operation. Operation='checkAndMutate', projectId='emulator', tableName='mquery', rowKey='149de7d2-272b-4524-ace3-8d977da6faf6#27c893ee-b50c-4b47-b08f-f3824291a62a'
	at com.google.cloud.bigtable.hbase.BigtableTable.logAndCreateIOException(BigtableTable.java:522)
	at com.google.cloud.bigtable.hbase.BigtableTable.checkAndMutate(BigtableTable.java:470)
----snipped----
Caused by: io.grpc.StatusRuntimeException: DEADLINE_EXCEEDED: deadline exceeded after 359999872003ns
	at io.grpc.Status.asRuntimeException(Status.java:517)
	at com.google.cloud.bigtable.grpc.async.AbstractRetryingOperation.getBlockingResult(AbstractRetryingOperation.java:300)
	at com.google.cloud.bigtable.grpc.BigtableDataGrpcClient.checkAndMutateRow(BigtableDataGrpcClient.java:267)
	at com.google.cloud.bigtable.hbase.BigtableTable.checkAndMutate(BigtableTable.java:467)
	... 32 common frames omitted

This happens for each call. The 12-minute interval occurs in each case. It’s brought my development to a grinding halt since I cannot use HBase/Bigtable at all. It was temporarily resolved by switching back to an older version of the emulator (gcloud 175) but the problem is back again today.

Library versions: google-cloud-core 1.8.0, google-cloud-core-grpc 1.8.0, google-cloud-core 1.8.0, bigtable-hbase-1.x 1.0.0-pre3

gcloud version output: Google Cloud SDK 177.0.0 alpha 2017.10.20 beta 2017.10.20 bigtable bq 2.0.27 cbt core 2017.10.20 gsutil 4.28 pubsub-emulator 2017.10.20

OS: Ubuntu 17.10

java -version output: java version “1.8.0_102” Java™ SE Runtime Environment (build 1.8.0_102-b14) Java HotSpot™ 64-Bit Server VM (build 25.102-b14, mixed mode)

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

0reactions
mbrukmancommented, Nov 12, 2017

Closing this issue as it is related to the emulator, so the bug opened in the google-cloud-go repo is the correct one we should pursue, and we don’t need this one any further.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Table.exists hangs · Issue #805 · googleapis/google-cloud-go
I've a Bigtable client that connects to a local emulator. Lately it has started hanging on table.exists - the only thing that was...
Read more >
DROP TABLE IF EXISTS hangs on Waiting for table metadata ...
Then I drop the table: DROP TABLE IF EXISTS unit_device. However, when I try to run this query, it hangs seemingly forever for...
Read more >
Table.exists hangs followed by DEADLINE_EXCEEDED
I've a Bigtable client that connects to a local emulator. Lately it has started hanging on table.exists - the only thing that was...
Read more >
Bigtable trying to determine if row exists, emulator hangs for ...
When connecting to a live Google Cloud instance of Bigtable, the code runs fine: a nonexistent row is reported. When connecting to the...
Read more >
Purging data from hang-off tables - IBM
However, the data from a hang-off table can be purged only if its parent elements are also purged. If a history table exists,...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found