apache / apache/iceberg

Add dedicated credential property to BigQuery metastore catalog

Open
#13,036 2 comments 0 reactions 0 assignees View on GitHub
improvement
Dominant language
Java
Stars
9.2k
Forks
3.5k
Avg merge
2d 16h
Merged PRs (30d)
129

Description

### Feature Request / Improvement

This is a follow-up of https://github.com/apache/iceberg/pull/12808.

The PR uses the `GoogleCredentials.getApplicationDefault()` method to create the BigQuery client. The approach doesn't work well when we want to access multiple BigQuery projects from a single machine.

I recommend adding a new property reading JSON key or file with the `GoogleCredentials.fromStream` method.

### Query engine

Starburst

### Willingness to contribute

- [x] I can contribute this improvement/feature independently
- [ ] I would be willing to contribute this improvement/feature with guidance from the Iceberg community
- [ ] I cannot contribute this improvement/feature at this time

Contributor guide

Open the contributing guide

Research direction

Start by reading the BigQuery metastore catalog code introduced by PR 12808 and trace its use of GoogleCredentials.getApplicationDefault(). Define the credential property behavior around GoogleCredentials.fromStream for a JSON key or file, then add coverage showing separate BigQuery projects can use separate credentials.

Written by the indexing model from the issue text.

Assessment

Tech stack
google-cloud, java
Domain
authentication, cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.