Skip to content

[ZEPPELIN-6312] Remove configuration WS usage in frontend#5060

Open
seung-00 wants to merge 1 commit intoapache:masterfrom
seung-00:feature/ZEPPELIN-6312
Open

[ZEPPELIN-6312] Remove configuration WS usage in frontend#5060
seung-00 wants to merge 1 commit intoapache:masterfrom
seung-00:feature/ZEPPELIN-6312

Conversation

@seung-00
Copy link
Copy Markdown
Contributor

What is this PR for?

This PR removes usage of the configuration API via WebSocket in the frontend.
The configuration API exists in both WS and REST, but unlike other APIs, it doesn’t seem to need two separate channels.
Maintaining both surfaces increases maintenance cost, so this PR unifies them by keeping only the REST API.

What type of PR is it?

Improvement

Todos

What is the Jira issue?

How should this be tested?

  • Check the configuration page (/configuration)
  • Check the notebook page (/notebook/{notebook_id})

Screenshots (if appropriate)

Questions:

  • Does the license files need to update? M
  • Is there breaking changes for older versions? N
  • Does this needs documentation? N

@seung-00 seung-00 force-pushed the feature/ZEPPELIN-6312 branch 4 times, most recently from f35d4eb to 4c00dde Compare August 31, 2025 16:28
Copy link
Copy Markdown
Contributor

@tbonelee tbonelee left a comment

Choose a reason for hiding this comment

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

Replacing WS with REST API seems reasonable since it reduce complexity.
As the login page is currently not working properly, that issue should be fixed as well.

Comment thread zeppelin-web-angular/src/app/services/configuration.service.ts Outdated
Comment thread zeppelin-web-angular/src/app/share/note-import/note-import.component.ts Outdated
Comment thread zeppelin-web-angular/src/app/share/note-import/note-import.component.ts Outdated
@seung-00 seung-00 force-pushed the feature/ZEPPELIN-6312 branch from 4c00dde to 325c067 Compare September 6, 2025 07:32
@seung-00
Copy link
Copy Markdown
Contributor Author

seung-00 commented Sep 6, 2025

I’ve updated according to the review comments.
But I found one issue: the configurations WS API has no auth check, while the REST API does. So users without permission can still access the configs via WS.

Removing WS right now would break things, so I’ll fix this in another PR before merging this one.

@tbonelee

@tbonelee
Copy link
Copy Markdown
Contributor

tbonelee commented Sep 6, 2025

image Could you also take a look at this? It seems that fetching configurations in `ConfigurationService.initialize()` when the user is not logged in might be causing some issues.

tbonelee pushed a commit that referenced this pull request Jan 22, 2026
…REST API

### What is this PR for?
Currently, configuration data is fetched through both REST API and WebSocket channels. However, the WebSocket path does not perform permission checks, and the only required data from it is the WebSocket max message size. 

I extracted the websocket max message size field into a dedicated REST API, to improve security and simplify configuration handling.

### What type of PR is it?
Improvement

### Todos
* [ ] #5060

### What is the Jira issue?
* Open an issue on Jira https://issues.apache.org/jira/browse/ZEPPELIN/6366

### How should this be tested?
- Check the configuration page (/configuration)
- Check the notebook page (/notebook/{notebook_id})

### Screenshots (if appropriate)

### Questions:
* Does the license files need to update? N
* Is there breaking changes for older versions? Y
* Does this needs documentation? N


Closes #5099 from seung-00/feature/ZEPPELIN-6366.

Signed-off-by: ChanHo Lee <chanholee@apache.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants