Gitpod and TabNine - preferences keep getting nuked

Lately every time I open a workspace (existing, not a new one), the TabNine preferences keep getting nuked to default - I have to login again and setup all the settings again and again.

Any idea how to make the settings persistent so I don’t have to spend 5 minutes playing with this every time a workspace is opened?

Thx.

Could you check please in the output view logs of settings sync channel? Do you have any errors there?

Not that I can see:

hm, it looks alright, let me try, which preference do you change?

Here’s the setup as I fix it:

Keeps happening with every workspace I open:

This is the JSON config:

{
  "version": "4.0.9",
  "hide_promotional_message": false,
  "beta_enabled": "No",
  "ignore_all_lsp": false,
  "creation_time": "2021-11-30T07:33:09.055468290Z",
  "guuid": “...",
  "semantic_status": {},
  "enable_telemetry": true,
  "user_understands_that_enabling_tabnine_cloud_sends_code_to_tabnine_servers": true,
  "hosted_deep_completions_enabled": "Disabled",
  "tabnine_cloud_host": null,
  "tabnine_cloud_certificate_domain": null,
  "tabnine_cloud_port": null,
  "cloud_whitelist": [],
  "num_of_suggestions": 5,
  "line_suggestions": null,
  "omit_prefix_suggestions": null,
  "team_ai_local_collection": null,
  "api_key": null,
  "api_base_url": null,
  "binary_update_interval_seconds": null,
  "local_enabled": "Unset",
  "disable_local_when_using_battery": false,
  "hide_deep_information_message": false,
  "enable_power_saving_mode": false,
  "rate_limit_interval_seconds": null,
  "rate_limit_amount": null,
  "generation": 45,
  "local_model_size": null,
  "model_hash_override": null,
  "local_indexing": null,
  "heartbeat_interval_seconds": null,
  "last_service_level": null,
  "override_beams": null,
  "override_context_length": null,
  "onboarding": null,
  "has_git_repos": null,
  "gusr": {
    "dgc": “..."
  },
  "exclude_file_masks": null,
  "inline_suggestions_mode": null,
  "use_specialized_model_if_available": null,
  "snippets_auto_trigger_enabled": null,
  "empty_line_suggestions": null
}

hm, what is this file? it does not look like VS Code user settings file.

tabnine_config.json

Where is it stored? VS Code setting sync does not preserve it for sure.

I see. The issue is that each workspace initialise user home from scratch. Do you think there is a way that you commit this file to GitHub and reconfigure TabNine to read this settings from your project?

Are you asking me to do that or are you asking if I am already doing that?

Asking to try it, right now settings are stored in user home, not under project.

I don’t see a way to change the path to the config tile in TabNine - and I would have to change the path every workspace change anwyay (from the default one, to my repo one).

hey @Foxhoundn, Dima from Tabnine here :wave: could you please share you vscode log (Help → Toggle Developer Tools)

we are using the setKeysForSync API to sync it

Hey, you want me to share the console I assume, since I am using gitpod in the browser?

Anything specific or do you want me to dump everything? Should I do it for new workspace or existing one?

While I have you here - could you also please check Organic suggestions removed when TabNine is active · Issue #483 · codota/TabNine · GitHub? I am having issues with the suggestions (no matter what settings I use)

@akosyakov Offtopic: Actually looking at the console now I see that the gitpod-monitor extension seems to be broken? I don’t see anything in the status bar either.

[Warning] [Extension Host] rejected promise not handled within 1 second: Error: ENOENT: no such file or directory, open '/sys/fs/cgroup/memory/memory.usage_in_bytes' (workbench.web.api.js, line 77)
[Warning] [Extension Host] stack trace: Error: ENOENT: no such file or directory, open '/sys/fs/cgroup/memory/memory.usage_in_bytes' (workbench.web.api.js, line 77)
[Log]   ERR – "ENOENT: no such file or directory, open '/sys/fs/cgroup/memory/memory.usage_in_bytes': Error: ENOENT: no such file or directory, ope…" (workbench.web.api.js, line 602)
"ENOENT: no such file or directory, open '/sys/fs/cgroup/memory/memory.usage_in_bytes': Error: ENOENT: no such file or directory, open '/sys/fs/cgroup/memory/memory.usage_in_bytes’"

I’ve just reloaded the window with console open, and this is one of the errors there:

"[Extension Host] Error: Binary request timed out.
	at Timeout._onTimeout (/home/gitpod/.vscode-remote/extensions/tabnine.tabnine-vscode-3.5.1/out/extension.js:17:29166)
	at listOnTimeout (internal/timers.js:554:17)
	at processTimers (internal/timers.js:497:7)"
[Error] [Extension Host] Error: Binary request timed out.
	at Timeout._onTimeout (/home/gitpod/.vscode-remote/extensions/tabnine.tabnine-vscode-3.5.1/out/extension.js:17:29166)
	at listOnTimeout (internal/timers.js:554:17)
	at processTimers (internal/timers.js:497:7)
	w (workbench.web.api.js:77:525276)
	$logExtensionHostMessage (workbench.web.api.js:1516:5136695)
	_invokeHandler (workbench.web.api.js:1516:5143563)
	_receiveRequest (workbench.web.api.js:1516:5142223)
	_receiveOneMessage (workbench.web.api.js:1516:5140902)
	fire (workbench.web.api.js:69:344779)
	fire (workbench.web.api.js:85:663484)
	_receiveMessage (workbench.web.api.js:85:668754)
	fire (workbench.web.api.js:69:344779)
	acceptChunk (workbench.web.api.js:85:660845)
	fire (workbench.web.api.js:69:344779)
	(anonymous function) (workbench.web.api.js:610:2073794)

can you please run echo $GITPOD_REPO_ROOT from the terminal?