Skip to content

HIVE-29495: [HPLSQL]Setting hive configs in hplsql causing console logs to be lost#6361

Merged
soumyakanti3578 merged 1 commit intoapache:masterfrom
mdayakar:HIVE-29495-HPLSQLIssue
Mar 23, 2026
Merged

HIVE-29495: [HPLSQL]Setting hive configs in hplsql causing console logs to be lost#6361
soumyakanti3578 merged 1 commit intoapache:masterfrom
mdayakar:HIVE-29495-HPLSQLIssue

Conversation

@mdayakar
Copy link
Copy Markdown
Contributor

HIVE-29495: [HPLSQL]Setting hive configs in hplsql causing console logs to be lost.

What changes were proposed in this pull request?

When SET hive config is executed, it is executed as a separate HiveCommand which is registrering a new logging context so it is creating a new operation log and after executing SET hive config it is unregistering the logging context which closes the operation log so for all the statements executed after this are not getting logged into operation log so in beeline console nothing is getting showed. Now we are not registering logging context as a part of SET hive config statement, which results in logging into the existing operation log so the logs are coming for all statements executed.

Why are the changes needed?

Without fix, after executing SET hive config there will not be any console logs on the beeline console.

Does this PR introduce any user-facing change?

No

How was this patch tested?

Testcase (testPrintMessageAfterExecuteSetHiveConfig) is added in the TestHplSqlViaBeeLine class
mvn test -Dtest=TestHplSqlViaBeeLine#testPrintMessageAfterExecuteSetHiveConfig -pl itests/hive-unit -Pitests

@dengzhhu653
Copy link
Copy Markdown
Member

I'm new to HPL, wondering why PRINT 'Should print this message' doesn't register a new logging context after the set is finished? as they are different operations, right?

@mdayakar
Copy link
Copy Markdown
Contributor Author

mdayakar commented Mar 18, 2026

I'm new to HPL, wondering why PRINT 'Should print this message' doesn't register a new logging context after the set is finished? as they are different operations, right?

Here all statements present inside 'scriptText' variable will be consider as one statement so only once logging context will be registred for all and at the end the logging context will be unregistered. For HPLSQL the delimiter is /(forward slash) compared to ;(semicolon) for normal SQL statements so for executing HPLSQL statements in beeline we need to pass / at the end so that all statements will be passed to HPLSQL engine once.

Copy link
Copy Markdown
Contributor

@soumyakanti3578 soumyakanti3578 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am approving this as the PR can be merged without addressing the nit (since it was not introduced in this PR).

@soumyakanti3578
Copy link
Copy Markdown
Contributor

@mdayakar I see that SonarQube has highlighted "Line is longer than 120 characters" in three places. Could you please fix them too?

@sonarqubecloud
Copy link
Copy Markdown

@soumyakanti3578 soumyakanti3578 merged commit 931d4bb into apache:master Mar 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants