SOL-115142: Added HowToImplementTracingManualInstrumentation

This snippet demonstrates HowTo do the following:

howToInjectTraceContextInSolaceMessage
howToExtractTraceContextIfAnyFromSolaceMessage
howToCreateSpanAndBaggageOnMessagePublish
howToCreateNewSpanOnMessageReceive

NOTE: The build.gradle and pom.xml will need to be updated with dependencies for  PS+ Java OTEL integration module (new dependency), Open-telemetry (new dependency) and also update the PS+ Java dependency once the context propagation feature is released. (solace-messaging-client to 1.7.0)
I am including the pom.xml & build.gradle changes in the PR as a reminder to myself for what needs to updated after the release.
^ Both have now been correctly updated ✅

FOR THE REVIEWER
(probably @Mrc0113 or @aaron-613 ??)
I based this snippet off the JCSMP one for manual instrumentation .
However, the JCSMP samples project has a separate folder called features which includes another folder separately for the DT feature containing classes such as TracingUtil, etc.
Can be found here.
This samples project does not have a features folder so I did not include those classes. My PR only contains the "HowToImplementTracingManualInstrumentation". Please let me know if we decide that there is a need for the other classes and where to put them.

@Mrc0113 @aaron-613 PS+ Java 1.7.0 & Java OTEL 1.0.0 are both released now. So I changing this PR from a draft to ready-for-review!

Hey @aelsammak , I'm gonna be taking a look at this now!  Just wondering, did you check out the updates to JCSMP samples that Jamil made a while ago?  He modified/tweaked a lot of the samples that R&D produced.  https://github.com/SolaceSamples/solace-samples-java-jcsmp/tree/master/src/main/java/com/solace/samples/jcsmp/features/distributedtracing

Hey @aelsammak , I'm gonna be taking a look at this now! Just wondering, did you check out the updates to JCSMP samples that Jamil made a while ago? He modified/tweaked a lot of the samples that R&D produced. https://github.com/SolaceSamples/solace-samples-java-jcsmp/tree/master/src/main/java/com/solace/samples/jcsmp/features/distributedtracing

Hello @aaron-613, I did check out the updates by Jamil and I see several classes were added to the "features" folder. I left a comment about this here: https://github.com/SolaceSamples/solace-samples-java/pull/38#issuecomment-2203395780

Updated the code, mostly Gradle and Maven JAR dependencies, fixed some warnings.
Added a comment to one method.
Code review in progress, noted a couple issue above.

@aaron-613 Good catches! I addressed your comments :)

Squashed and merged, even with that GItHub Action warning for tutorials something something.


Add 'difficulty' metadata for questions

This is a relatively trivial and harmless change.


Enable using AWS spot instances

The patch enables the use of AWS spot instances for workers, infra, and workload nodes, except for the controller nodes, which will be deployed as normal instance types. To use this feature, a new environment variable SPOT_INSTANCE_ZONE must be set to the zone where the spot instances would be deployed. Example:
    export SPOT_INSTANCE_ZONE=us-east-2a
The instance type for the nodes will use the existing environment variables OPENSHIFT_WORKER_INSTANCE_TYPE, OPENSHIFT_INFRA_NODE_INSTANCE_TYPE, and OPENSHIFT_NODE_INSTANCE_TYPE.
The spot instance type available for use in a zone can be obtained from the AWS spot request console.  Have created a script spotlst.sh(https://gist.github.com/yogananth-subramanian/1e69b11c4ce1564cbbc612f61ea05031), that can be used to pick the spot instance type and zone to use, it provides details about interrupt percentage per instance_type for each zone and their corresponding spot pricing and savings percentage over on-demand price.
Example:
  ./spotlst.sh --mincpu 4 --maxcpu 4 --minmem 16 --maxmem 16 --intr 1 -region us-east-1,us-east-2 --inst m5.xlarge
Using minimum price of the on-demand instance as maximum price for spot intance 0.1920000000
region,zone,instance_type,price,savings,iterrupt
us-east-2,us-east-2a,m5.xlarge,0.041400,79,0
Description
Fixes

Hi @mohit-sheth @jtaleric @afcollins @rsevilla87 it would be wonderful if you could review and provide your valuable feedback for the patch(Enable using AWS spot instances #203 ) .


Add Pike

https://github.com/JamesWoolfenden/pike

I see no mention of OpenTofu support in the README.


Error when enabling GPU

Bug description
I have an existing container for Jellyfin that I want to recreate with GPU enabled. Instead I get an error saying:

Failure
e.HostConfig.DeviceRequests is null

Expected behavior
Enabling the GPU slider and recreating works
Portainer Logs
Nothing helpful seems to show up in logs
Steps to reproduce the issue:

Hit edit on existing container
Enable GPU in Runtime & Resources
Hit deploy the container
See error

Technical details:

Portainer version: 2.15.1
Docker version (managed by Portainer): 20.10.8
Kubernetes version (managed by Portainer): n/a
Platform: Ubuntu 22.04.1
Command used to start Portainer: docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
Browser: Firefox
Use Case (delete as appropriate): Using Portainer at Home
Have you reviewed our technical documentation and knowledge base? Yes

@gausie
Can you share your settings that you are using here, or are they default as shown?
Thanks!

Exactly as shown above!

@gausie
Thank you for the information.  I was able to reproduce the issue.  I am going to log an internal request to review and resolve.
Thanks!

I am also having this issue as well with both default and a specific GPU.
Docker version 20.10.12, build e91ed57
Platform: TrueNAS Scale (Debian 11.2)

Same issue here:

Is triggered by the following section (from b

rowser devtools):

Same issue here:
Is triggered by the following section (from b  rowser devtools):

I'm having the same problem.

Same error messages observed in 2.16.2.

Same here, 2.16.2 :( Was looking fwd to integrating my new Quadro card

I'm having the exact same issue when trying to enable GPU.

Exact same issue, verified it works with containers not using portainer

Exact same issue, verified it works with containers not using portainer

Does Portainer only have the issue with enabling the feature, meaning we can just work around it by applying the change outside of Portainer? If so, what's the simplest way to accomplish that?

@malventano i'm using qnap container station and the ui to set it up, i'm still at a loss at how to properly use a docker-compose.yaml to do it as the standard docker guide doesn't account for qnap structure

Confirmed issue is still present on 2.17.0.

@malventano
Thank you for the additional information.  I am going to further investigate.  Updates to follow.
Thanks!

@malventano
Can you provide screenshots?  Is this Portainer Server Local or Portainer Agent Environment?
I have an instance with GPU/NVidia:
ubuntu@ip-172-31-85-170:~$ lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA
00:02.0 VGA compatible controller [0300]: Cirrus Logic GD 5446 [1013:00b8] (prog-if 00 [VGA controller])
00:1e.0 VGA compatible controller [0300]: NVIDIA Corporation GM204GL [Tesla M60] [10de:13f2] (rev a1) (prog-if 00 [VGA controller])

My steps performed are:
[1] Build GPU enabled instance
[2] Docker Standalone Local
[3] Create Stack
[4] Navigate to Container
[5] Duplicate/Edit >> Runtime and Resources
[6] Enable GPU >> default settings
[7] Update Limits >> Deploy Container
https://user-images.githubusercontent.com/20426210/217684597-a0309a10-4bc2-46b5-8345-9a639154fcd5.mov
Thanks!

@malventano
I also tested Portainer Agent Environment.  I did not receive Toast error.
Steps Performed:
[1] Build GPU enabled instance
[2] Docker Standalone Agent Environment
[3] Create Stack
[4] Navigate to Container
[5] Duplicate/Edit >> Runtime and Resources
[6] Enable GPU >> default settings
[7] Update Limits >> Deploy Container
https://user-images.githubusercontent.com/20426210/217685799-8b6f0342-9803-4d21-8914-7a977646912a.mov
Thanks!

@tamarahenson
I also suffer this same error after 2.17.0.  You're screen capture only shows the update limits, but its when you attempt to deploy a container with the GPU that you get the error.
https://user-images.githubusercontent.com/28850278/217903788-02dc2c87-cfb7-4699-9fc8-7fc5e7fb4c37.mp4

@oFlyinHigho
Thank you for the additional information.
I am able to reproduce an error upon initial creation.  I get a 500.  Upon further review of the Web Dev Tools, it says "could not select device driver "nvidia" with capabilities: [[compute utility]]"` I am going to log an internal issue for the initial creation.
However, I am able to successfully add GPU, after creation and upon edit.
https://user-images.githubusercontent.com/20426210/217951078-c23f2484-c79e-4412-beb2-2d9c403e9ccf.mov
Workaround:
If you want to enable GPU on container, you need to create the container first and then edit to add.
Thanks!

How exactly do you mean?

@gausie
Thank you for the information. I was able to reproduce the issue. I am going to log an internal request to review and resolve.
Thanks!

I'm still getting the exact same error that is highlighted in this post
I see https://github.com/portainer/portainer/pull/8316 still isn't merged, is this related?

@tamarahenson

I am able to reproduce an error upon initial creation. I get a 500. Upon further review of the Web Dev Tools, it says "could not select device driver \"nvidia\" with capabilities: [[compute utility]]" I am going to log an internal issue for the initial creation.

That appears to be a different error than what everyone else is seeing.

Workaround: If you want to enable GPU on container, you need to create the container first and then edit to add.

This is the exact scenario that causes the error: Failure e.HostConfig.DeviceRequests is null

Confirmed same issue on 2.17.0 CE when adding GPU to existing container. Really frustrating when trying to get plex working.

Update:  I am uncertain why my edit the container functionality is working.  https://github.com/portainer/portainer/pull/8316 is still being tested and should be in the next release.
It is possible this might be related to the way I am installing GPU.  I am using the following:
[1] AWS AMI:  Ubuntu 22.04 x86
[2] AWS Instance Type:  g3s.xlarge
[3] Nvidia Drivers
[4] Cuda Drivers
[5] Nvidia Container Runtime
Thanks!

I am very unfamiliar with Linux, and I've got no idea about how to use docker outside of Portainer so I'm very much at a loss with this one!
Is there a workaround for this until the next Portainer version(with the fix) is rolled out? I tried the editing mentioned above, but no success.
Platform: Ubuntu 22.04.1 LTS
Portainer: Community Edition 2.17.0
Docker: Standalone 20.10.17
GPU: GTX 1050ti 4gb
Driver Version: 525.78.01
CUDA Version: 12.0

Hey!
Where I can find my Mac mini M1 GPU id or UUID?

For now, I have worked around this by including the GPU in my stack compose script. Needs to be using the nvidia runtime:
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

I'd love to try that, but I'm not sure what I should be doing!
I'm trying to get the GPU enabled for my Plex container, but I've only ever set it up as a container in Portainer; no idea how to copy it over as a stack and I've never made a .yaml for it.
I find this "Failure Cannot read properties of null (reading 'push')" error to be interesting. If I create a next Plex container, it lets me create it with a GPU enabled! I tried to manually copy across all the settings from my existing Plex container, and that didn't work.(more of problem with the the database and file permissions I think) But when I inspected the new and the old one, this was the main difference in the JSON: (GPU ID removed here though)

     "DeviceRequests": [
        {
            "Capabilities": [
                [
                    "compute",
                    "utility"
                ]
            ],
            "Count": 0,
            "DeviceIDs": [
                "GPU-UUID"
            ],
            "Driver": "nvidia",
            "Options": null
        }
    ],

I mean, ideally I'd like to be able to just add those parameters manually,(which is basically what Lindsay posted?) but that doesn't seem to be an option...which makes sense given what Portainer is there for!
It appears to only affect existing Portainer containers?

I have the same issue, I tried the above with a new container and it will deploy the container but not use the GPU, I found a gpu stress test container that utilizes the gpu so it seems to be a issue with the portainer/plex container

I'm using a plex container too, as well as a transcoding one (FileFlows).
Are you using the nvidia-runtime with it?

I have the same issue, I tried the above with a new container and it will deploy the container but not use the GPU, I found a gpu stress test container that utilizes the gpu so it seems to be a issue with the portainer/plex container

I'm using a plex container too, as well as a transcoding one (FileFlows).
Are you using the nvidia-runtime with it?

This is the one I used to test if docker can use my gpu
https://hub.docker.com/r/oguzpastirmaci/gpu-burn

This is the one I used to test if docker can use my gpu
https://hub.docker.com/r/oguzpastirmaci/gpu-burn

Yes, that image will be using the nvidia-runtime.
You can install the runtime yourself and use it in your container like this:
version: "2.1"
services:
  plex:
    image: lscr.io/linuxserver/plex
    runtime: **nvidia**
    container_name: plex
    network_mode: host
    environment:
      - PUID=***
      - PGID=***
      - TZ=Australia/Brisbane
      - VERSION=public
    volumes:
      - /root/appdata/plex:/config
      - /root/appdata/plex/transcode:/tmp/Transcode
      - /mnt/plex:/mnt/pvr2/plex
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    restart: always

I'd dig up the instructions from nvidia but I have to go to a meeting right now :(

how would I add nvidia-runtime to a current container? did not use the stack option when I setup my plex container, shows in portainer runtime: nvidia

That looks correct, presume you installed the runtime on the docker host earlier?
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html
You also need to install the nvidia drivers on the docker host.

how would I add nvidia-runtime to a current container? did not use the stack option when I setup my plex container, shows in portainer runtime: nvidia

That looks correct, presume you installed the runtime on the docker host earlier?
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html
You also need to install the nvidia drivers on the docker host.

how would I add nvidia-runtime to a current container? did not use the stack option when I setup my plex container, shows in portainer runtime: nvidia

That looks correct, presume you installed the runtime on the docker host earlier?
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html
You also need to install the nvidia drivers on the docker host.

I think bichpudding is having the same issue as me; all the nvidia stuff is there, but for whatever reason, when you enable the GPU on the container and redeploy it, you get the error message.
I've got the drivers installed on the host, and I have a Nvidia Cuda container(nvidia/cuda:12.0.1-devel-ubuntu22.04) running as well. (with the GPU enabled!)
If I stand up a completely new/separate container of Plex, it lets me enable the GPU, but it errors whenever I try to enable it on the existing one.
It's doing my head in!

Yeah drivers are installed, I see it being used with the stress test container when I use nvtop to view the gpu activity, but for whatever reason, I cannot get plex to hw transcode anymore, if I do a fresh one with runtime it will deploy the container but the gpu is not used to transcode still

@tamarahenson

Update: I am uncertain why my edit the container functionality is working. #8316 is still being tested and should be in the next release.

Confirmed issue still exists on 2.17.1

Any update on this issue?
If anyone can help me redeploy my image so I can get my 1060 working in my plex docker container, I would be massively indebted to you!

Is there any update or temporary solution? I have the same issue on intel i5 7500T integrated graphics. I can't add it and I get the same error 500

I am also getting 500 when trying to update a plex container.

Getting "Cannot read properties of null (reading 'push')" on trying to enable intel integrated graphics.

This issue still persists in  2.18.1 version

Still a problem for all of us it seems, but has the actual cause of it been identified yet?
Reading through the thread again, it does appear to be specific to Plex containers.
I am using this: https://hub.docker.com/r/linuxserver/plex
Is there any other information we can provide to help resolve this one?

Please provide the type of graphics cards being used and are all of the drivers properly installed?
Thanks!

Please provide the type of graphics cards being used and are all of the drivers properly installed?

This happens regardless of GPU and with drivers properly installed. The issue is with Portainer. Has been for nearly a year now.

Reading through the thread again, it does appear to be specific to Plex containers.

It happens with any container the user attempts to add GPU passthrough to after the container was created.

@malventano
I am able to successfully enable GPU on any container with the following build:
[1] AWS AMI: Ubuntu 22.04 x86
[2] AWS Instance Type: g3s.xlarge
[3] Nvidia Drivers
[4] Cuda Drivers
[5] Nvidia Container Runtime
I also tested Nvidia install on RHEL and was able to enable GPU on containers.
Whatever graphics cards are being used, you have to install all of the drivers required and make sure the driver container runtime is properly running.
Thanks!
Thanks!

I finally got it to work for me with a gtx 1060 following these steps

sudo apt search nvidia (to find latest driver)
sudo apt install nvidia-driver-xxx
sudo apt install -y nvidia-container-toolkit
sudo systemctl restart docker
get UUID from /prod/drivers/nvidia/000-0x (number for gpu you want to use)
nano information
add to portainer

nano information

What do you mean by this @Spillebulle ?

nano information

What do you mean by this @Spillebulle ?
Also, what did you add to portainer?

You type "nano information" and the file called "information" will be opened in nano. Here you will find the UUID of the gpu in question.
You then add this UUID to portainer in Host - Setup

Whatever graphics cards are being used, you have to install all of the drivers required and make sure the driver container runtime is properly running.

@tamarahenson driver and toolkit are installed and confirmed functional within docker by the following:
docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi
Tue Apr 25 17:25:41 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 530.30.02              Driver Version: 530.30.02    CUDA Version: 11.6     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                  Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf            Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Quadro P5000                    Off| 00000000:18:00.0 Off |                  Off |
| 26%   40C    P0               41W / 180W|      0MiB / 16384MiB |      1%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

GPU UID is set within Portainer. When attempting to enable on an existing container I get the following:

So the only part that appears to be failing here is that Portainer is unable to add the GPU to the container.

Whatever graphics cards are being used, you have to install all of the drivers required and make sure the driver container runtime is properly running.

@tamarahenson driver and toolkit are installed and confirmed functional within docker by the following:
docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi
Tue Apr 25 17:25:41 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 530.30.02              Driver Version: 530.30.02    CUDA Version: 11.6     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                  Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf            Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Quadro P5000                    Off| 00000000:18:00.0 Off |                  Off |
| 26%   40C    P0               41W / 180W|      0MiB / 16384MiB |      1%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

GPU UID is set within Portainer. When attempting to enable on an existing container I get the following:
So the only part that appears to be failing here is that Portainer is unable to add the GPU to the container.

Just want to confirm that my situation is the same as malventano's above.
What I did find, was that I could create a brand new container (not a copy) and that would let me enable the GPU.
I don't know enough about how docker or portainer works to know why that would be different to copying/replacing an existing container, but I figure it's worth noting again.
Really, I would at least like to know the "why" as to the cause of this issue...that should at least be able to lead to someone finding a fix!
If any specific information is needed, I'd be happy to provide it. (might need some help finding it though!!)

I got hardware transcoding to work finally.
1: install Nvidia drivers and toolkit
2: leave the enable GPU option off.
3: add the following env options
NVIDIA_VISIBLE_DEVICES to all
NVIDIA_DRIVER_CAPABILITIES to all
4: test video file.
Works fine for me on my 3060

I got hardware transcoding to work finally.
1: install Nvidia drivers and toolkit 2: leave the enable GPU option off. 3: Change runtime to Nvidia 4: add the following env options NVIDIA_VISIBLE_DEVICES to all NVIDIA_DRIVER_CAPABILITIES to all 5: Test video file. 6: Have a beer.
Works fine for me on my 3060

Were you getting the "Failure Cannot read properties of null (reading 'push')" error before successfully getting it to work?
I already have drivers and toolkit installed, and those two env options added and set to "all"(just double checked the spelling was right), but when I enable the GPU, I still get the above error.

Done through the thread again in desperation...is this actually the fix, but we're just waiting on it to be added to the next release?
https://github.com/portainer/portainer/pull/8316

I what think the issue is:
When you add the gpu to portainer, it adds the info to a config File. When enabling the gpu in a specific docker, it references that config File. Either the file is not being written correctly, or the docker can't see the config File, thus returning the error. I am not smart enough the be able to research this line of thinking.

Yes I was getting that error. By putting it in the Nvidia runtime and the ENV labels, I bypassed the gpu toggle

This seems to be the only way to get it working. Changes in the GPU resources section result in the error, but manually setting the env options seems to be a workaround.
(but this should not be necessary to get it working since Portainer has those options embedded).

I have tried every way possible to get my set up of Ubuntu 22.04 running docker and plex to pass through the GPU, I get the error when tried to add the GPU from the setup environment at runtime.
If I build the container first with the GPU set and then add all the plex setup info GPU transcoding is not working.
As a test to check the GPU I installed UnRaid with Nvidia drivers and plex installed and this is working correctly.
Can any help me get this to work if not then I will have to change my platform from Ubuntu to UnRaid.
Thanks
Matt

I set env variables to all for both nvidia like mentioned earlier and runtime is set to nvidia but it still not use GPU

Whatever graphics cards are being used, you have to install all of the drivers required and make sure the driver container runtime is properly running.

@tamarahenson driver and toolkit are installed and confirmed functional within docker by the following:
docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi
Tue Apr 25 17:25:41 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 530.30.02              Driver Version: 530.30.02    CUDA Version: 11.6     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                  Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf            Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  Quadro P5000                    Off| 00000000:18:00.0 Off |                  Off |
| 26%   40C    P0               41W / 180W|      0MiB / 16384MiB |      1%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

GPU UID is set within Portainer. When attempting to enable on an existing container I get the following:
So the only part that appears to be failing here is that Portainer is unable to add the GPU to the container.

Just want to confirm that my situation is the same as malventano's above.
What I did find, was that I could create a brand new container (not a copy) and that would let me enable the GPU. I don't know enough about how docker or portainer works to know why that would be different to copying/replacing an existing container, but I figure it's worth noting again.
Really, I would at least like to know the "why" as to the cause of this issue...that should at least be able to lead to someone finding a fix!
If any specific information is needed, I'd be happy to provide it. (might need some help finding it though!!)

I tried making a brand new container and enable gpu toggle gave me the same error again, anything different you did or what does your compose file look like?

It works if the "Use hardware acceleration when available " option is checked
If only "Use hardware-accelerated video encoding" checked then it doesn't
But "Use hardware acceleration when available " can lower video quality does anybody have  idea why it would behave like this?
I tested with a 4k video to transcode to 1080p so that should force to use hw but it doesn't.

Any update on this?

Still a problem for me on 2.18.3
Here's nvidia-smi output on the host machine

Get this error in portainer

Have added the NVIDIA_DRIVER_CAPABILITIES=all and NVIDIA_VISIBLE_DEVICES=all too, still not working. The jellyfin container can't detect the GPU drivers.

lastest update broke the Plex container and had to switch runtime from nvidia to runc for it to work now, any fix coming to this seems like nothing is being done.

openen near 1 year... Any moving forward?

opened closely 1 year... Any moving forward?

It seems like this issue has already been resolved, right?

Looks like it's fixed in 2.19.0
https://github.com/portainer/portainer/issues/10174
Not home so can't test it.

Getting 500 (Internal Server Error) now...

Does this mean that the 'fix' in #10174 actually made it the problem worse?

不，我记得很早之前就解决了#8316

Looks like it's fixed in 2.19.0
#10174
Not home so can't test it.

请展开说一下你的问题

Getting 500 (Internal Server Error) now...

It seems like this issue has already been resolved, right?

sorry, I mean

Still a problem for me on 2.18.3 Here's nvidia-smi output on the host machine
Get this error in portainer
Have added the NVIDIA_DRIVER_CAPABILITIES=all and NVIDIA_VISIBLE_DEVICES=all too, still not working. The jellyfin container can't detect the GPU drivers.

This issue seems to have been resolved by #8316 a long time ago. Are you sure the problem of null still exists?

2.19.0 was released yesterday but it looks like it got pulled.
instead of null was getting 500 error.

2.19.1 - 500.

I had the same issue and have attempted many times to fix it. Finally, I can run GPU in Jellyfin by these steps:

Uninstall Jellyfin.
Reinstall Jellyfin from https://wiki.seeedstudio.com/Jellyfin-on-Docker-Ubuntu-X86/
In step "Create and run a container", --runtime=nvidia should be declared, for example:

docker run -d \
 --name jellyfin \
 --net=host \
 --volume jellyfin-config:/config \
 --volume jellyfin-cache:/cache \
 --mount type=bind,source=/path/to/media,target=/media \
 --restart=unless-stopped \
 --runtime=nvidia \
 jellyfin/jellyfin

Access Jellyfin in portainer:

Runtime & Resources>>Runtime=nvidia
Env>> NVIDIA_DRIVER_CAPABILITIES=all, NVIDIA_VISIBLE_DEVICES=all

2.19.1 - 500.

@pax0707  Can you check your browser's developer console and find the response from the call that's throwing the 500 error? This might point us towards a root cause and solution.

@jamescarppe

你没安装NVIDIA Container Toolkit吧
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

2.19.1 - 500.

@pax0707 Can you check your browser's developer console and find the response from the call that's throwing the 500 error?  Using Chrome as an example, open the developer tools, go to the Network tab, and find the request named start that has errored (it should be in red and the 500 error code should show up in Status). Select that request, and in the new details page that opens choose the Response tab.

    "message": "could not select device driver \"nvidia\" with capabilities: [[compute utility]]"

The machine is running Debian 12 with Intel GPU.

    "message": "could not select device driver \"nvidia\" with capabilities: [[compute utility]]"

@jamescarppe The machine is running Debian 12 with Intel GPU.

Ah, you're on an Intel GPU. I believe (and I'm confirming this now) that our current support through the GPU functionality is for nvidia GPUs only, as that was what the community user that contributed the base code for the feature originally provided support for.
In the meantime, you can generally provide Intel GPU access to a container by attaching the /dev/dri as a device to your container. In the Portainer UI, you would do this in the Advanced container settings section when creating or editing a container, under the Runtime and Resources tab, through the Device option. Click add device then enter /dev/dri in both boxes:

I've tested this locally just now with Jellyfin and an Intel iGPU, and I can see the iGPU usage ticking up when I play media through the Jellyfin container so it's indeed passing it through correctly.

Cheers!
That did the trick with a slight caveat that (in Plex) I had to manually select the card, auto didn't work.

That did the trick, with a slight caveat that (in Plex) I had to manually select the card, auto didn't work.

Ah yep, that makes sense - /dev/dri is a catchall "directory" for GPU devices (DRI stands for Direct Rendering Infrastructure). If you, for example, had multiple GPUs they'd all appear in this directory. If you wanted to use a specific GPU you could probably select it directly (for example I have /dev/dri/renderD128).
Glad you got it sorted in any case! I'm discussing with the team how we're more clear on our support here going forward (and how we can potentially support other GPU brands).

Hello. New to this "forum" here. (Tried to look for the forums.portainer.io but it doesn't resolve anymore. :( )
In any case, does anybody know how they can add a NVidia GPU to Plex via Portainer with the Plex Media Server docker-compose.yml file?
i.e. I have enabled the Nvidia passthrough in said docker-compose.yml file:
version: '2'
services:
  plex:
    container_name: plex
    image: plexinc/pms-docker
    restart: unless-stopped
    security_opt:
      - seccomp:unconfined
      - apparmor:unconfined
    environment:
      - TZ=America/Los_Angeles
    network_mode: host
    volumes:
      - /home/ubuntu/pms-docker:/config
      - /home/ubuntu/pms-docker:/transcode
      - /home/ubuntu/data:/data
    ## Share hardware devices with FFmpeg and TensorFlow (optional):
    devices:
    #  - "/dev/dri:/dev/dri"                         # Intel QSV
     - "/dev/nvidia0:/dev/nvidia0"                 # Nvidia CUDA
     - "/dev/nvidiactl:/dev/nvidiactl"
     - "/dev/nvidia-modeset:/dev/nvidia-modeset"
    #  - "/dev/nvidia-nvswitchctl:/dev/nvidia-nvswitchctl"
     - "/dev/nvidia-uvm:/dev/nvidia-uvm"
     - "/dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools"
    #  - "/dev/video11:/dev/video11"                 # Video4Linux Video Encode Device (h264_v4l2m2m)

But then I was watching another YouTube video about adding the GPU to the Portainer host, and then adding that as a resource when you are creating a container.
But what I am less clear about is what happens if you create the container with a docker-compose.yml file (or at least the text contained within), in the Stacks web editor -- when I tried to then recreate/edit the container, so that I can add the GPU to said container, the error message that I get is:

However, under the advanced container settings, I don't even have MAC_ADMIN selected/enabled and I don't think that capability has been requested from the docker-compose.yml file neither.

Your help in regards to this error that I am seeing is greatly appreciated.
Thank you.

Cheers!
That did the trick, with a slight caveat that (in Plex) I had to manually select the card, auto didn't work.
Enabling the Intel GPU was working till around 2.15 and after that, it errored with null. Integrated Intel GPUs are not ideal but for slight 1080p they can do. It sure is better than pure CPU. ;- ) =

What app are you using for those stats in your screenshot?


Added WhereIf (Implementation, xml-docs, tests, readme.md)

@ysmoradi Thanks but I think what would be more generally useful is an if-else operator instead of combining the where and the if-else:
public static IEnumerable<TResult> If<T, TResult>(this IEnumerable<T> source,
    bool condition,
    Func<IEnumerable<T>, IEnumerable<TResult>> trueCase,
    Func<IEnumerable<T>, IEnumerable<TResult>> falseCase) =>
    condition ? trueCase(source) : falseCase(source);

The usage would look like this:
var sequence = Enumerable.Range(1, 10);
var result = sequence.If(true, xs => xs.Where(x => x % 2 == 0), xs => xs);
Console.WriteLine(string.Join(", ", result)); // 2, 4, 6, 8, 10

Here's another example of its general applicability:
var evens  = true;
var desc   = false;
var result =
    Enumerable.Range(1, 10)
              .If(evens, xs => xs.Where(x => x % 2 == 0),
                         xs => xs)
              .If(!desc, xs => xs.OrderBy(x => x),
                         xs => xs.OrderByDescending(x => x));
Console.WriteLine(string.Join(", ", result));

System.Interactive already has an If implementation available today so I don't think anything needs to be added to MoreLINQ.

@atifaziz Yeah, I'm agree with you. Next time I try to add more useful one (:

Next time I try to add more useful one (:

Would be also best to propose an enhancement by discussing it as an issue first instead of going straight to a PR. That way, you don't waste time coding up a whole implementation and tests or risk being disheartened if your contribution doesn't get merged in the end.

Yeah, we should do that.  So I copied one of them easily to see what happens next. I'm analyzing my next step and I'll discuss it using a new issue.


Makes Span implement Serializable

I'm not sure if this has any negative side effects but I'm attempting to use a Span as part of a Flink stream and all data members have to be serializable. Without this PR, I'm required to wrap Span in a Serializable class (more likely just wrap the string representation) that can convert two and from a Span.
Please let me know if there's anything else that's needed.

Codecov Report

Merging #95 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master     #95   +/-   ##
========================================
  Coverage      98.7%   98.7%
  Complexity     1107    1107
========================================
  Files            62      62
  Lines          2619    2619
  Branches        374     374
========================================
  Hits           2585    2585
  Misses           19      19
  Partials         15      15

Impacted Files
Coverage Δ
Complexity Δ

...ips-core/src/main/java/com/nike/wingtips/Span.java
100% <ø> (ø)
58 <0> (ø)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 730bb8d...2305ffd. Read the comment docs.

@gregghz makes sense, and I see Zipkin made their spans serializable for the exact same use cases.
Thanks for the contribution!

one note about ours was that we specialized the implementation as java serialization is so slow. It was easier for us to do this considering we have a no-dep protobuf codec inside...

@adriancole ah good to know. I didn't dig into it that deeply, just saw the note at the top of the zipkin span source. We'll have to keep this in mind in case it becomes an issue.
Thanks for the heads up!


abseil-cpp: Enable loongarch64

Base on https://github.com/abseil/abseil-cpp/pull/1110 to enable
loongarch64
I was thinking if I should update all the file under the folder? Which I have only updated the file 202103.nix, this is using by my program's defaultly.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

The patch should probably be made conditional for this PR to go to master.

Like only using this patch if the host Platform is loongarch?

Yes.

And should I update all file about this option? Now I have only updated the one I using.

And should I update all file about this option? Now I have only updated the one I using.

Not a blocker for me.

Have any ideas ? It seems that modifying nixpkgs will not affect the results of packages that have been built successfully in my computer, thus I have to push for test.(

@NixOS/ofborg build pkgsCross.loongarch64-linux.abseil-cpp

Adding lib.optionals stdenv.hostPlatform.isLoongArch64 should clearly not cause you a rebuild.


create phpunit config file

allows user to simply run phpunit in their console to execute the
tests

Already exists at build/phpunit.xml.


[BUG] AzureCommunicationChat unit tests don't execute in CI unit test stage

Describe the bug
I added unit tests for AzureCommunication chat service, and add unit tests into "all" schema. After that, I build and run it locally, and I can see my newly added unit tests appears in the result. However, when I trigger the pipeline, I don't see my new unit tests being executed in the unit test stage.
Exception or Stack Trace
N/A
To Reproduce
Commit anything and trigger CI to run unit tests
Code Snippet
N/A
Expected behavior
Expected unit tests being executed.
Screenshots
"all" schema setup

Local unit tests passed

However, it doesn't appear in the cloud build log: https://dev.azure.com/azure-sdk/public/_build/results?buildId=659474&view=ms.vss-test-web.build-test-results-tab
Setup (please complete the following information):

OS: OS X 10.15.7
IDE : Xcode Version 12.2
Version of the Library used

Additional context
N/A
Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[x] Bug Description Added
[x] Repro Steps Added
[x] Setup information Added

Fixed in PR #610.


Extra time spent renting from ArrayPool

20% of CPU time is being spent renting from the ArrayPool.  From quick glance, it looks like that and one of the largest sources of allocation is because the code isn’t disposing of the JsonDocuments that get produced as part of the parsing.  JsonDocument rents from the ArrayPool, and disposing it returns arrays to the pool.  If lots of these are created and not disposed, it not only allocates (because there’s nothing left in the pool), it still spends all the time searching the pool for an array it’ll never find, and in this case incurring a lot of contention with all of the other threads doing the same.

We will be moving to utf8Reader

fixed in 6.x, 7.x is not using JsonDocument.


If no private orgs are found the lock will show on all orgs

https://github.com/sindresorhus/refined-github/blob/c5118b12475579a9cb8f61af316f2f53b239213c/source/features/mark-private-orgs.js#L29
looks like the issue this line since orgPath will be undefined...
Originally posted by @yakov116 in https://github.com/sindresorhus/refined-github/pull/1616/review_comment/create

I just checked your profile and all your orgs are private, unless you changed the privacy since making the issue. I tried making all my own orgs public, and I cannot reproduce your issue.
--
If it's really an issue, the 3 lines above the one you linked should skip the iteration if orgPath is undefined, as you suggested.
https://github.com/sindresorhus/refined-github/blob/c5118b12475579a9cb8f61af316f2f53b239213c/source/features/mark-private-orgs.js#L24-L29
My guess is that there are two possible points of failure:
Either the call to get your public orgs returns an empty list, https://github.com/sindresorhus/refined-github/blob/c5118b12475579a9cb8f61af316f2f53b239213c/source/features/mark-private-orgs.js#L8-L12
Or the format of the URLs as received in the API call and the href attribute of the org icons is different,
https://github.com/sindresorhus/refined-github/blob/c5118b12475579a9cb8f61af316f2f53b239213c/source/features/mark-private-orgs.js#L23
https://github.com/sindresorhus/refined-github/blob/c5118b12475579a9cb8f61af316f2f53b239213c/source/features/mark-private-orgs.js#L29

@momothereal ok I hunk I misunderstood how organizations work. The organizations I am part of are public however viewing the members are private. (I have made myself public on one to test how it will work)
I thought that the feature was supposed to highlight the private organizations.
Is there such a thing as a private org?

Not that I am aware of. Organizations are essentially user accounts, so while you can make all repositories private, you cannot hide the existence of the profile.
The point of the feature is to let the user know their private organization membership. That could be made more evident in the feature description.


Can't make test work with v2.4.1

Hi,
I'm using your plugin (thanks for that by the way) v1.3.3 with my project. I also have tests running with https://github.com/novoda/gradle-android-test-plugin.
Everything works fine and dandy. But I can't upgrade your plugin to 2.4.x. None of the tests compile then.
root
    -- application
    -- application-unit-tests

In my application project I have
retrolambda {
    jdk System.getenv("JAVA8_HOME")
    oldJdk System.getenv("JAVA7_HOME")
    javaVersion JavaVersion.VERSION_1_7
}

but I have no additional configuration in my application-unit-tests project. And not sure if I should since everything works fine with v1.3.3

Sorry for such delay. Tested on with 2.5.0 - same problems.

Since google has released proper unit testing support, those testing plugins are now obsolete. I've made some changes in 3.0.0 that may fix this issue, but moving to the native unit testing would be a better solution.

Were planing to migrate to native support this week so I'll follow up on this.

Works perfectly with native unit testing support.


supported Python versions

Please, specify supported Python versions. Python3 (3.5) complains about:

zonal/tzverify.py
zonal/tzdump.py
pycalendar/datetime.py

Now i don't know if python3 is supported and this error, or it is not supported and this is expected.
Thanks

It is known to work with 2.7.x. I'm not sure what the expectation is for python3, but I'll find out.

Thanks for reply.
I was able to solve these three files by running 2to3 script on them, but i didn't test whole package on Python3.5 in depth yet. But if i properly remember, the problem was only basic - the parentheses in print and one 0L assignment.


Check ycmd is not running correctly

I installed emacs-ycmd and ycmd.
My ycmd command is
(set-variable 'ycmd-server-command '("python" "~/git/ycmd/ycmd/ycmd"))
The server appears to start fine. (Though I cannot see the server logs.)
I copied the .ycm_extra_conf.py file in emacs-ycmd to my project directory and set the ycmd-extra-conf-whitelist
(set-variable 'ycmd-extra-conf-whitelist '("~/code/vatic/*"))
The file gets loaded when I open a .cc file in my project (as there is a popup and I say yes). The ycmd-server buffer in emacs doesn't show any errors.
However, after this, ycmd doesn't do anything. Even when I deliberately introduce a syntax error in the code it doesn't show any errors / warnings. It never provides any completions. I can't figure out the problem. The only thing I see in the ycmd-server buffer is:
2016-01-09 20:51:47,266 - DEBUG - Event name: FileReadyToParse
2016-01-09 20:51:47,266 - INFO - Adding buffer identifiers for file: /home/bhatia/code/vatic/quote.cc
2016-01-09 20:51:47,824 - INFO - Received health request
2016-01-09 20:51:57,238 - INFO - Received event notification
2016-01-09 20:51:57,238 - DEBUG - Event name: FileReadyToParse
2016-01-09 20:51:57,238 - INFO - Adding buffer identifiers for file: /home/bhatia/code/vatic/quote.cc
2016-01-09 20:52:00,322 - INFO - Received event notification
2016-01-09 20:52:00,322 - DEBUG - Event name: FileReadyToParse
2016-01-09 20:52:00,322 - INFO - Adding buffer identifiers for file: /home/bhatia/code/vatic/quote.cc
2016-01-09 20:52:17,824 - INFO - Received health request
Any help with debugging will be appreciated.

I turned on debugging in ycmd-request and fixed the .ycm_extra_conf.py file to include system headers.
ycmd server is now returning data related to errors. However, neither flycheck nor ycmd is doing anything with the errors.
Error data from Messages buffer, which shows integration with ycmd server is working. But emacs is not marking the errors at all.
REQUEST [debug] data = [((fixit_available . :json-false) (location_extent (end (line_num . 6) (column_num . 9) (filepath . /home/bhatia/code/vatic/main.cc)) (start (line_num . 6) (column_num . 5) (filepath . /home/bhatia/code/vatic/main.cc))) (location (line_num . 6) (column_num . 5) (filepath . /home/bhatia/code/vatic/main.cc)) (ranges . []) (text . use of undeclared identifier 'cout') (kind . ERROR)) ((fixit_available . :json-false) (location_extent (end (line_num . 8) (column_num . 7) (filepath . /home/bhatia/code/vatic/main.cc)) (start (line_num . 8) (column_num . 3) (filepath . /home/bhatia/code/vatic/main.cc))) (location (line_num . 8) (column_num . 3) (filepath . /home/bhatia/code/vatic/main.cc)) (ranges . []) (text . use of undeclared identifier 'cout') (kind . ERROR))]
REQUEST [debug] symbol-status = success
REQUEST [debug] Executing complete callback.
Mark set
Making completion list...
user-error: No more Flycheck errors

I turned on flycheck - using flycheck.el.  Flycheck gives the errors.
However, ycmd is still not providing completions. I expect a drop down box of possible completions.
For example. I have lines:
int token = 20;
tok
If I run ycmd-display-completions at the end of 2nd line, I get:
((completion_start_column . 3)
(completions .
[((extra_menu_info . "[ID]")
(insertion_text . "token"))])
(errors .
[]))
So the ycmd-server is returning token as a completion. But ycmd is not showing any dropox for me to select.

Are you using company and company-ycmd to display the completions? ycmd by itself doesn't do any sort of display (beyond the ycmd-display-completions command which you already found).

Thanks for the info. And thanks a lot for this github project!
I started company-ycmd and it works really well.  We should update the documentation to reflect this.
Regards
Manish

Closing this issue since everything is resolved.

OK, great! And thanks for the feedback on the setup instructions. I've added a bit of text to the README that's more explicit about using company-ycmd. Take a look at it and let me know if you think it's sufficient.


LibWebView: Add keyboard navigation to the Inspector

Now keep a track of the DOM nodes which are actually visible in the Inspector, and allow the user to navigate the tree using the keyboard.

Let me know if that's an okay caching solution

To comment on actually trying this out: It's very nice! I'd like if the left and right arrow keys also worked to expand/contract elements and navigate to their parent or child, but that can go in a separate PR.


Upgrade Spark version to 3.3

Feature or Bugfix

Bugfix

Detail

Upgrade Spark version from 3.1 to 3.3
Upgrade Glue Profiling Job Version from Glue 3.0 to Glue 4.0

Relates

Security
Please answer the questions below briefly where applicable, or write N/A. Based on
OWASP 10.

Does this PR introduce or modify any input fields or queries - this includes
fetching data from storage outside the application (e.g. a database, an S3 bucket)?

Is the input sanitized?
What precautions are you taking before deserializing the data you consume?
Is injection prevented by parametrizing queries?
Have you ensured no eval or similar functions are used?

Does this PR introduce any functionality or component that requires authorization?

How have you ensured it respects the existing AuthN/AuthZ mechanisms?
Are you logging failed auth attempts?

Are you using or adding any cryptographic features?

Do you use a standard proven implementations?
Are the used keys controlled by the customer? Where are they stored?

Are you introducing any new policies/roles/users?

Have you used the least-privilege principle? How?

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Testing Completed:

[ ] Deploy to AWS - Pipeline Succeeds
[ ] Confirm Jar Upload Correctly
[ ] Run Glue Profiling Job via UI --> Job Successful


Fix typos in README

I am documenting this repository on https://wiremock.org/docs/solutions/dotnet/ , so cleaned up some typos while around

FTR https://github.com/wiremock/wiremock.org/pull/110


hostsfile: safely overwrite hosts file instead of clobbering

In this case, I just opted to use a millisecond timestamp instead of a random number to avoid extra dependencies.
fixes #183

Yeah, I think that might have been why we did it the other way, although my memory doesn't serve particularly well (a good reason to add comments now...).
We could also have logic that tries to do this renaming method first and then falls back to the less safe truncate-and-rewrite option if the creation of a new file doesn't work. Do you think that's too much? I'll also look into seeing how easy it is to check available space on the mount and failing before truncating if that's possible...

Converting to a draft since this needs more thought before merging.
Actually, I do remember that originally hostsfiles used to do the safer rename-style method: https://github.com/tonarino/innernet/commit/449b4b8278496634cae9cb87fc3dc20e71222f7b
...and then I changed it to support running the innernet client in non-root environments more easily.
Here are two ideas for new logic, depending on our tolerance for complexity:
complicated fallback logic

Attempt to do the copy-write-replace within the parent folder
If that fails, check statvfs for available blocks on the filesystem and write-in-place if it seems likely to succeed and hope for the best

simpler write-in-place logic
Just do the second step from the complicated option and hope for the best

I've timeouted trying to come up with something smart, so...
I think complicated fallback logic would be better. The step 1. will catch all users running innernet as root, which may be the (vast?) majority. We could optionally warn (perhaps once per program lifetime) if we fallback to 2. so that non-root users know their tradeoffs.

pro-tip: never accidentally git reset main, then git push -f...

@strohel implemented the swap-and-replace with clobber fallback (opted not to add code to check statvfs for now) - feel free to take a peek if you have time, otherwise i'll merge soon :).


Add tests for blob implementations

Enhance the FakeBlobUpath class to make it support more tests for real blob store classes.
This may help clarify and narrow down the interaction surface with underlining storage engine.

done


Check updater and installer functionality

It seems that in some cases the update does not replace the old files with the new ones.
Also it seems that uninstaller does not remove all files from the installation directory

Duplicate of #1490


[dx12] Fix for building with rust 1.35.0

Fixes https://ci.appveyor.com/project/loki04/webrender/builds/28520384#L580
PR checklist:

[ ] make succeeds (on *nix)
[ ] make reftests succeeds
[x] tested examples with the following backends: dx12
[ ] rustfmt run on changed code

cc @kvark

@zakorgy could you please bump the patch version?
We'll also need it for 0.4 and master

Wow, Vulkan backend on 0,3 is broken by Rust now :(
Merging this manually...


disableWatchdog fails on 4.1.0

Could not find gadget with bytes: ff 03 01 d1 f4 4f 02 a9 fd 7b 03 a9 fd c3 00 91 53 -1 -1 -1 73 -1 -1 -1 60 22 00 91 08 fc df 08 48 01 00 37
My browser's user agent is:
Mozilla/5.0 (Nintendo Switch; WifiWebAuthApplet) AppleWebKit/601.6 (KHTML, like Gecko) NF/<IP_ADDRESS>.9 NintendoBrowser/<IP_ADDRESS>85

Pegaswitch does not completely support 4.1.0. Some offsets are still 1.0-3.0 only.

Has anyone found the gadget needed for it to work?

Try commenting out the code that does the disableWatchdog thing


How to continue training on checkpoints

Thanks for your great work! I wonder how can I continue to train a scene based on a checkpoint from previous training. Since I'm not familiar with the framework, I just want to know the command I need to follow.

You should be able to set the experiment.params.ckpt_dir argument in any of the scripts that you want to run. Hopefully this works, and let me know if not!


Heroku Free Dynos: "fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached"

fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached Possible Fix

Kindly note that the free dynos services of Heroku, a hosting provider, has stopped which is causing fake-useragent to crash for all users.
fake-useragent hosted one or more of its services to gather info on heroku at https://fake-useragent.herokuapp.com/browsers/0.1.11 which is eventually down after the services got stopped.

To Developers (fake-useragent, @fake-useragent, @hellysmile): Upgrade to paid dynos asap for us to use your services, or move to a vps
To Developers (rest, like me): There's nothing we can do on our sides, either wait or use some other pypi package

Some quite big projects of mine and thousands of others, are very much dependent of your package, so kindly get your services restored as early as possible, thank you :) @hellysmile

You are using a very old version. Try to use the latest version: pip install --upgrade fake-useragent

I have the same problem and use last version :/

I had this same issue in the morning but it has been resolved after upgrading to the latest version from 0.1.11.

Looks like i have been using the fake_useragent package instead of fake-useragent, even though the both pypi redirects to fake-useragent, as in fake_useragent!
Anyways if anyone like me has been doing the same, make the changes and it's gonna be fixed.

Thanks for the suggestions, I'll definitely consider the changes during an exe conversion.

Thanks for the suggestions, I'll definitely consider the changes during an exe conversion.

I had this same issue in the morning but it has been resolved after upgrading to the latest version from 0.1.11.
Edit: Then I had another issue when I tried to turn my .py files into exe file using pyinstaller, which I did the same way for 2 years. importlib.metadata.PackageNotFoundError: fake-useragent is the error I get. Looking into it. One SO post about another package says after version upgrade, new version requires dist-info to be present, which doesn't work when you have one file installation.
But I guess now it is a different issue.
Edit 2: It is solved by adding dist-info of fake-useragent 1.1.0 into setup file with "--add-data" command. All good now.

.

Edit 2: It is solved by adding dist-info of fake-useragent 1.1.0 into setup file with "--add-data" command. All good now.

Interesting since there is indeed an other issue on this github repo exactly about pyinstaller. So what can I do so solve this problem for all windows users in my code base?

Hi @acibiber53, thanks for the guidance. I'm having a new problem I'm hoping you can help me with.
After upgrading to fake-useragent 1.1, my python file runs locally, but when I upload to Lambda, I get this error:
[ERROR] AttributeError: 'PosixPath' object has no attribute 'read_text'
Any idea what might be causing that and if I need to upgrade a different package? Thanks in advance!

Please fix this ASAP. This error is breaking alot of stuffs.

You can easily switch to anti-useragent by changing your requirements.txt and your import line. Class names are similar.
That's what I did.
Obviously this project here is not maintained anymore :(

Ow it's maintained. But nobody helps me with the fix for windows (pyinstaller). I don't run Windows.

Looks like i have been using the fake_useragent package instead of fake-useragent, even though the both pypi redirects to fake-useragent, as in fake_useragent!

It looks like indeed it's renamed when we migrated to pyproject.toml Python setup.

For me the issue was using cloudflare-warp while trying to pip install fake-useragent inside a Docker build with python:3.9-alpine as image.
Solved my issue by disabling warp for the action.
warp-cli disable-always-on

It seems docker is super slow to downloading deps with warp.
Very strange, but worked, hope it can help someone else.

If you are still using an old version, execute: pip install --upgrade fake-useragent
Again, it should use a local browsers.json file as data source. It will never connect to the internet anymore.


Cannot set property 'fragmentReplacements' of undefined

I keep gretting this error when trying to use prisma-binding in my server.
/Users/server/node_modules/graphql-binding/dist/Delegate.js:48
        this.fragmentReplacements = fragmentReplacements || [];
                                  ^

TypeError: Cannot set property 'fragmentReplacements' of undefined
    at Delegate (/Users/server/node_modules/graphql-binding/dist/Delegate.js:48:35)
    at Binding (/Users/server/node_modules/graphql-binding/dist/Binding.js:28:28)
    at Prisma (/Users/server/node_modules/prisma-binding/dist/Prisma.js:54:24)
    at Object.<anonymous> (/Users/server/index.js:23:17)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)

Hey @luandro 👋,
Could you compose a simple reproduction of this bug? It could be either CodeSandbox app or a Github repository. This way we can fix the bug a lot more quickly 🙂

Thanks @maticzav, it was happening on this repo, but I've started a new project that it works without any problems. So I'll close, thanks for the attention.


Mockoon DOWN

🚨 Service Alert: Check the details below
Monitor Details

Monitor Name: Mockoon
Incident Status: TRIGGERED
Severity: critical
Monitor Status: DOWN
Monitor Health Checks: 1
Monitor Failure Threshold: 1

Actions

View Monitor

[start_datetime:1732683300] [end_datetime:1732663501]

The incident has been auto resolved
Total downtime: 18:29:00 minutes


fix: Add migration to show/hide data point labels on charts

Fixes #26321

/ok-to-test sha=4b458f1

/build-deploy-preview env=release

Verified the below for all basic charts:

Data migration of Show labels wrt existing apps that have Allow scroll turned on/off
State of Show labels on new widgets
Sanity check for charts

PR looks good to me.


Change hashing used in BGL (Bitgesell) project (Keccak)

This is initial change to btcd codebase

briefly updated readme;
changed methods to generate txes for signing using BGL Keccak hashing;

unfortunately there are cross-references between btcd packages that need to be resolved for docker build to succeed.
This is for later scope (as well as performing tests in production)


WIP PR for transactions against Peter's base branch

This branch was squashed and completed into my branch in https://github.com/pepsico-ecommerce/snowflex/pull/49/commits/365828db1c95a372df2c840d9af1a75a4941ab21.


better tests in pkg/sorted

-concurrency
-no corruption on sudden kill

I actually ended up doing some of it in https://camlistore-review.googlesource.com/5486
But no concurrent stress yet.


suboptimal routes?

As far as I understood the payments in LN are routed in such a way that the destination node doesn't know the public key of the source node provided there is sufficient distance between these 'Alice' and 'Bob' nodes.  Correct?
For example as written here :

The paper also finds that despite randomized onion routing, “strong statistical evidence can be gathered about the sender and receiver of payments, since a substantial portion of payments involve only a single routing intermediary.”
As a potential solution to this privacy drawback, the authors suggest using “deliberately suboptimal, longer routing paths [that] can restore privacy while only marginally increasing the cost of an average transaction.”

I mean if the attacker own a substantial number of intermediate nodes, he can gather some statistical evidence.  Correct?
If so, how can I find not the shortest and the most efficient route but the most convoluted one?

Also another question.  Kinda related to the issue discussed.
The matter concerns the problem of change in Wasabi Wallet.
They recommend ( https://docs.wasabiwallet.io/using-wasabi/ChangeCoins.html#why-change-is-an-issue ) to do the following:

The Lightning Network can be a very private way of sending bitcoin, and you can choose the channel size to be exactly the size of your change coin. However, it is very important that you do not link this non-private coin to your main Lightning node public key.

So, a good strategy is to create a new Lightning node and public key, send the whole change coin into this fresh wallet, and open a channel of this amount to a random peer on the network. Then route a payment either to a merchant for goods and services, or to your own main Lightning node for further use.

After the balance of the channel is entirely on the other side, cooperatively close the channel with your peer, so that he gets the only output in the closing transaction.

Is it really necessary to create a new LN node?  Or it can be sufficient just to chose some convoluted route to transfer the funds to the main LN node?
Anyways, will it be secure to transfer the funds as described - just by creating a new LN node, opening a channel with random peer and transferring the funds to the main LN node and closing the channel afterwards?

Oh.  So I can use the output of describegraph command to get the nodes and open channels.  Is there any tools available to build the routes with a minimum number of hops via that data?

This isn't a forum, this is an issue tracker. I recommend you join our slack where we'll be happy to field questions like this.


Regression? examples/rl/workflows/simple_learner.py  cannot run anymore🐛

susan@vm-2:~/maro$ python ./examples/rl/workflows/simple_learner.py
Traceback (most recent call last):
File "./examples/rl/workflows/simple_learner.py", line 14, in
from agent_wrapper import get_agent_wrapper
File "/home/susan/maro/examples/rl/workflows/agent_wrapper.py", line 13, in
from general import agent2policy, non_rl_policy_func_index, rl_policy_func_index
File "/home/susan/maro/examples/rl/workflows/general.py", line 21, in
module = importlib.import_module(f"{config['scenario']}")
File "/usr/lib/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "/home/susan/maro/examples/rl/supply_chain/init.py", line 4, in
from .env_wrapper import get_env_wrapper
File "/home/susan/maro/examples/rl/supply_chain/env_wrapper.py", line 1173, in
tmp_env_wrapper = get_env_wrapper(replay_agent_ids=[])
File "/home/susan/maro/examples/rl/supply_chain/env_wrapper.py", line 1170, in get_env_wrapper
return SCEnvWrapper(env=Env(**env_config), replay_agent_ids=replay_agent_ids)
File "/home/susan/maro/examples/rl/supply_chain/env_wrapper.py", line 85, in init
super().init(env, reward_eval_delay, replay_agent_ids=replay_agent_ids)
File "/home/susan/maro/maro/rl/learning/env_wrapper.py", line 69, in init
self._replay_buffer = {agent_id: defaultdict(list) for agent_id in replay_agent_ids}
File "/home/susan/maro/maro/rl/learning/env_wrapper.py", line 69, in
self._replay_buffer = {agent_id: defaultdict(list) for agent_id in replay_agent_ids}
TypeError: unhashable type: 'SkuInfo'

This issue has been fixed on an internal testing branch that has not been published to the repo yet. I will update this branch with the latest RL toolkit and the AKS scripts and publish it in the next few days. Thanks for your patience.


Cosmos: Deal with missing property values

Since Cosmos DB is schema-less database, it is possible to reference a property that is not defined in all documents in a query. For example, the following query:
SELECT c.MissingProperty FROM Customers c

Returns the following results for a collection that contains three documents that do not contain MissingProperty:
[
    {},
    {},
    {}
]

When EF Core models mapped to Cosmos DB evolve, we expect that it will be common to use a new version of an entity type that contains a property that is not defined in existing documented already stored in the database.
From the perspective of materialization, this could be dealt with by just skipping properties that are missing in the store. This would result in the properties on the objects to keep whatever value they were initialized to. For example, for optional properties, a missing value in the store would become equivalent to the property being null.
However there is an important caveat with this approach: because of how indexing works in Cosmos DB, queries that reference the missing property somewhere else than in the projection could return unexpected results. For example:

If a property that is missing in some documents is referenced in a predicate that tests it against null, only documents that contain the property will be returned

If a property that is missing in some documents is referenced in the sort expression or an ORDER BY clause, documents that contain the property with any value (including null) will be sorted, but documents that do not define the properties will be filtered out because they are not in the index used to resolve ORDER BY

Although for ORDER BY there is a way we could compensate by issuing two separate queries (the first one to get all the data, and the second one to get the order an potentially less data), it seems that this could be relatively expensive. This approach would not help for the WHERE clause case because it could require all the data from the collection to be retrieved.
But for WHERE we could use IS_DEFINED (see https://github.com/aspnet/EntityFrameworkCore/issues/13131#issuecomment-418491753).
What we can do?
The alternatives I can see are:

Make sure the behavior is well documented
At some point come up with "schema" evolution tooling that makes sure new properties are added to existing documents
Try to figure out a way (probably with help of annotations in the model) we can warn when properties are used in queries which could be missing values in existing documents.
Add an extension method to EF.Functions that maps to IS_DEFINED() (see https://github.com/aspnet/EntityFrameworkCore/issues/13131#issuecomment-418491753) so that it can be explicitly used in LINQ queries.
Compensate for null navigation properties (see  https://github.com/aspnet/EntityFrameworkCore/issues/13131#issuecomment-416392815) and scalar properties by expanding IS NULL to also check for NOT IS_DEFINED().

Another related aspect of this is shown in the following query:
SELECT * FROM Customers c
WHERE c.Address.City = null

This query will only return documents that have an Address and the City set to null. If the whole address is missing in a document, that document will not be returned.
This is something we can easily compensate for by rewritting the predicate to add "null protection".

@smitpatel and I discussed this further. He found that we could expand null comparisons in predicates to use the IS_DEFINED() function in order to compensate for the current behavior.
However presumably having a predicate filters a large number of documents on IS_DEFINED() would be expensive.
We are currently discussing with the Cosmos DB team to see if we get a recommendation.

Assigning to @divega to write conclusion. We may probably not do anything special about this.

I am following up with the Cosmos DB team to close on some details.
My understanding is that they have long term plans to extend Cosmos DB indexing, so that the behavior will be more predictable for ORDER BY (it will start returning rows for which the property is not defined, either at the end or at the begining of the query results), but not sure what they will do will help with WHERE directly, or whether it will make expanding c.MissingProperty IS NULL to c.MissingProperty IS NULL OR !IS_DEFINED(c.MissingProperty)` more efficient.
In the meantime, I believe we should plan to implement a combination of options:

Make sure the behavior is documented
Map IS_DEFINED on EF.Functions
Compensate for the null navigation property case

cc @smitpatel, @andriysvyryd

I got additional information from the Cosmos DB team:

They are working now on a feature that will allow returning results with ORDER BY <sort_property> without an implicit WHERE IS_DEFINED(<sort_property>) filter. The timeframe isn't super solid but it seems to work well with our latest schedule.

There are no plans to change the semantics of NULL in WHERE. I.e. a property being NULL and it not being defined at all are likely still going to be treated as two distinct conditions going forward. However the goods news are that:

IS_DEFINED(<property>) is served from the index, even today
They are working on an enhancement that will allow negated expressions, including NOT IS_DEFINED(<property>) to be served from the index as well.

This means that you can write a query like this to return all Customers for which the middle name is either null or not defined:
SELECT * FROM Customers c
WHERE NOT IS_DEFINED(c.MiddleName) OR c.MiddleName = null

And this should be evaluated efficiently.

This leave us with only two choices to make:

Do we want to compensate when we translate a == b where one of them can be null? If we did, it would be somewhat similar to null semantics in relational in which we want to make NOT IS_DEFINED(<property>) equivalent to <property> IS NULL.
I am not completely convinced either way, but we don't do it, I think the priority of mapping IS_DEFINED on EF.Functions increases.

Do we want to compensate in the slightly narrower case of nested properties? E.g.
SELECT * FROM Customers c
WHERE c.Address = null OR c.Address.City = null

For this one I am almost completely convinced we should, but would like to discuss it with others in the team.

@divega to document triage decisions

Triage decisions:

We will map IS_DEFINED(<property>) on EF.Functions for Cosmos DB
We will expand null comparisions for nested properties to compensate, e.g. c.Address.City = address will expand to c.Address = null OR c.Address.City = null when address is equal to null.
We won't add compensation for missing properties in general, at least for now. We can always add it later based on feedback.

Just wanted to know/check how this would work with a LINQ expression? if I search on null will it actually include values not defined as well as null.
if not how would you do a Is Defined query via LINQ?
thanks

@AndriySvyryd - What is action item here?

What @divega said. #2 is probably highest priority.

We will map IS_DEFINED(<property>) on EF.Functions for Cosmos DB

@divega is this already in the works? Or already implemented in some way?

@NickSevens we didn't get to it in 3.0. As @AndriySvyryd mentioned we considered number 2 to be the highest priority.
It would be great if you could give some details of when and why you need the method, to help us prioritize.
I am clearing the milestone to discuss in triage when we this could fit.

Sure thing, I'm trying to get paged results, in which I'm ordering by an optional property. So essentialy I'm calling 2 queries: one ordering the data which has the property, one which doesn't have the property (essentialy adding all NULL and Undefined at the end).
E.g:
var orderedData = context.Items.OrderBy(i => i.MyProp).ToList();
var nulledData = context.Items.Where(i => !i.IsDefined());
orderedData.AddRange(nulledData);

@AndriySvyryd I have split this into https://github.com/aspnet/EntityFramework.Docs/issues/1712 and because this seems better for tracking purposes.
Since we said we won't proactively add compensation for missing properties, I think we can close this as fixed now. Your thoughts?
@NickSevens the new issue I created at https://github.com/aspnet/EntityFrameworkCore/issues/17722 should be what you want. Notice that my attempt at a code snippet of how the API would be used looks a bit different from yours.
Also, in a conversation with the Cosmos DB team last year, they told me that they were planning to make changes to indexing so that when you issue a SELECT query with something like an ORDER BY on a property, they would start including document instances in which the property is missing. I can follow up on my side, but have you tested this recently on Cosmos DB?

I have, but that still doesn’t work. I believe NULL valies are included, but undefined are not.

Thanks @NickSevens. I have sent email to my contacts in Cosmos DB team to find out if there is an ETA for this being addressed. I agree this increases the priority of providing access to IS_DEFINED() in LINQ queries.

Awesome. Thanks for looking into it @divega

@divega We still need to implement decisions 1. and 2.

@AndriySvyryd, ok, I will.
@NickSevens I got an answer that might be useful:

We currently support returning missing properties in the order-by results, if sorting was done over a composite index.
For instance, if the indexing policy defines the composite index {name/? ASC, /age/? ASC)}, then a query the has ‘ORDER BY c.name ASC, c.age ASC’ would return documents w/ missing ‘name’ and ‘age’ properties.
We’re working on extending this to non-composite indexes as well.

Closing as duplicate since we haven't done anything yet, but we now have separate issues tracking the actions we decided on.

I get a bad request when I try to query the following using powershell
Get-CosmosDbDocument -Context $cosmosDbContext -CollectionId 'ApplicationGroup' -Query "Select * from Container c WHERE (NOT IS_DEFINED(c.MissingProperty))"
However, I get the correct results when I query the same directly in the container

@snehashankar Get-CosmosDbDocument is not owned by the EF team, file an issue at https://github.com/PlagueHO/CosmosDB


Support all token for Belgian EID V1.7

Belgian V1.7 EID card use token but also a mask on this token. Add support for the mask when comparing the tokens.
Solve https://github.com/web-eid/libelectronic-id/issues/57

Superseded by https://github.com/web-eid/libelectronic-id/pull/94/files


Link detection API

Language extensions need to be able to handle link detection in the terminal so they can properly jump into a library when stack traces are clicked.
Example using Dart:
When I print out a stack trace and cmd+click on a file link, VSCode fails to navigate to package files in my pub_cache.
For illustrative purposes in the screenshots, I navigated to the file by jumping to it when debugging. The file does not pop up when cmd+clicking the link.

Note that searching the workspace for the text of the line does show the result, and I can click into the line in the editor.

This is because

/duplicate https://github.com/microsoft/vscode/issues/91290


Rustup should not error on failed set mtime

My virus scanner thinks main-ret-zero-pe-i386.exe is malware so it deletes it before rustup.rs can set the mtime which makes rustup.rs crashing.
Output:
$ rustup component add rust-src --toolchain stable
info: downloading component 'rust-src'
 26.5 MiB /  26.5 MiB (100 %)  23.6 MiB/s ETA:   0 s
info: installing component 'rust-src'
info: rolling back changes
error: failed to extract package
info: caused by: failed to set mtime for `/Users/bjorn/.multirust/tmp/s6rc7p16apkzg49g_dir/rust-src/lib/rustlib/src/rust/src/llvm/test/Object/Inputs/main-ret-zero-pe-i386.exe`
info: caused by: No such file or directory (os error 2)
info: backtrace:

stack backtrace:
   0:        0x1084a067e - backtrace::backtrace::trace::h36e5966500ba9bd9
   1:        0x1084a099c - backtrace::capture::Backtrace::new::h3a3d5e9defd7d407
   2:        0x10839dacd - rustup_dist::component::package::TarGzPackage::new_file::h28e27c21d786759b
   3:        0x1083a9d1d - rustup_dist::manifestation::Manifestation::update::h1bc94a51f1952058
   4:        0x1083587fc - rustup::toolchain::Toolchain::bare_add_component::h472c7dd66f50cd92
   5:        0x1083572a3 - rustup::toolchain::Toolchain::add_component::hda3b3b6729060205
   6:        0x1082a1719 - rustup_init::rustup_mode::main::hfea33579784abfaf
   7:        0x1082c2ddd - rustup_init::main::h52ca72dd5a8b29fc
   8:        0x1084bc96c - std::panicking::try::call::h5df3ac2979db3c90
   9:        0x1084bd99a - __rust_maybe_catch_panic
  10:        0x1084bc1f8 - std::rt::lang_start::hfe9ab243c60ffb9b

I'm not sure it's reasonable to expect rustup to work if another process is deleting files underneath it TBH - in this case it's not even crashing, it seems to be correctly detecting a failed install and is rolling back the changes. Pretending that the install was successful when not all files have been installed would be worse IMO.

It is a file only needed for windows. Maybe report a warning when executable files are deleted during install?

Actually it's not windows-specific, it appears to be used by the LLVM test suite on every platform. However, it's not needed just to build rust or when using racer, so reporting a warning instead is a solution I'd be OK with.

I think this file is no longer included in the source component.


NTR inviable after spore germination, multiple cell divisions, cell lysis during cytokinesis

inviable after spore germination, multiple cell divisions, cell lysis during cytokinesis
parents
XXXXXXXXXXXX inviable after spore germination, multiple cell divisions
and
FYPO:0003440 | cell lysis during cytokinesis
make a common parent for new term &
inviable after spore germination, multiple cell divisions, with abnormal cytokinetic cell separation and increased septum thickness
(I suspect they are the same or related so good to have a grouping)

inviable after spore germination, multiple cell divisions, cell lysis during cytokinesis FYPO:0006877
inviable after spore germination, multiple cell divisions, with abnormal septation FYPO:0006878
FYPO:0003971 was created for the gpi1 disruption in PMID:9046095. I admit that similarity between it and the new term doesn't jump out at me, but maybe that's due to limitations of older microscopy.
I also had to guess at what you wanted for the common parent; reopen if you had something different in mind.
edit file: 2a736df11cb4a1235a331761aa20a2d40cdd3f79
release: c6bb70640c22d92a2fafb32d18a7329d277aaf44


download map

Can you do a background download map management? Open the service download

@Bird-Gold Did that answer your question? If so, please close the issue.

Assuming the CacheManager was the solution, I'm closing the issue.
@Bird-Gold Feel free to open a new issue if needed.


Create CRUD bug using SQLite

Describe the bug
Cannot create proper CRUD
To Reproduce
Steps to reproduce the behavior:

Create table
Create CRUD with default values
Edit CRUD
All CRUD fields are unchecked

Expected behavior
CRUD fields are checked according to step 2
Screenshots

Desktop (please complete the following information):

OS: Mac OS
Browser: Brave
Version: rc13

Hi @aqidd, could you provide us with some screenshot from the console.

Sure thing. Here are more details:

Tried this again with rc14
sqlite as database

console error:

here's the return from api:
{"message":"Request was successful","errors":null,"data":{"crud":{"id":2,"name":"tbltest","slug":"tbltest","displayNameSingular":"Tbltest","displayNamePlural":"Tbltest","icon":null,"modelName":null,"policyName":null,"controller":null,"orderColumn":null,"orderDisplayColumn":null,"orderDirection":null,"generatePermissions":"1","serverSide":"0","isMaintenance":"0","description":null,"details":null,"notification":"[]","isSoftDelete":"0","createdAt":"2021-08-23T14:46:55.000000Z","updatedAt":"2021-08-23T14:46:55.000000Z","dataRows":[{"id":6,"dataTypeId":"2","field":"id","type":"number","displayName":"Id","required":"1","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"1"},{"id":7,"dataTypeId":"2","field":"intest","type":"number","displayName":"Intest","required":"1","browse":"1","read":"1","edit":"1","add":"1","delete":"1","details":"{}","relation":null,"order":"2"},{"id":8,"dataTypeId":"2","field":"txtest","type":"textarea","displayName":"Txtest","required":"1","browse":"1","read":"1","edit":"1","add":"1","delete":"1","details":"{}","relation":null,"order":"3"},{"id":9,"dataTypeId":"2","field":"created_at","type":"datetime","displayName":"Created At","required":"0","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"4"},{"id":10,"dataTypeId":"2","field":"updated_at","type":"datetime","displayName":"Updated At","required":"0","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"5"}]}}}

and here's the crud status (intest and txtest should all be selected)

I just wonder, how about using mysql as database mr @aqidd ?
Is it working with mysql ?
thank you

you're right @rizkiheryandi , this only happens using SQLite. MySQL works without any problems.
I changed the issue title for clarity

Sure thing. Here are more details:

Tried this again with rc14
SQLite as database

console error:
here's the return from API:
{"message":"Request was successful","errors":null,"data":{"crud":{"id":2,"name":"tbltest","slug":"tbltest","displayNameSingular":"Tbltest","displayNamePlural":"Tbltest","icon":null,"modelName":null,"policyName":null,"controller":null,"orderColumn":null,"orderDisplayColumn":null,"orderDirection":null,"generatePermissions":"1","serverSide":"0","isMaintenance":"0","description":null,"details":null,"notification":"[]","isSoftDelete":"0","createdAt":"2021-08-23T14:46:55.000000Z","updatedAt":"2021-08-23T14:46:55.000000Z","dataRows":[{"id":6,"dataTypeId":"2","field":"id","type":"number","displayName":"Id","required":"1","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"1"},{"id":7,"dataTypeId":"2","field":"intest","type":"number","displayName":"Intest","required":"1","browse":"1","read":"1","edit":"1","add":"1","delete":"1","details":"{}","relation":null,"order":"2"},{"id":8,"dataTypeId":"2","field":"txtest","type":"textarea","displayName":"Txtest","required":"1","browse":"1","read":"1","edit":"1","add":"1","delete":"1","details":"{}","relation":null,"order":"3"},{"id":9,"dataTypeId":"2","field":"created_at","type":"datetime","displayName":"Created At","required":"0","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"4"},{"id":10,"dataTypeId":"2","field":"updated_at","type":"datetime","displayName":"Updated At","required":"0","browse":"1","read":"1","edit":"0","add":"0","delete":"0","details":"{}","relation":null,"order":"5"}]}}}

and here's the crud status (interest and txtest should all be selected)

As per what I checked it seems you not having a response, did you check if your SQLite database and tables were created?
Also, it's good to try to use nullasafe operator to avoid issues with undefined returns in javascript.


Update the configuration of RadApp so that it builds again

RadApp needs some updating in its components.yaml since the now the radiation and chemistry are there own repos.

Hi Matt, Yes, please! ...  it needs updating to recognize that Radiation is now a repo. Ben suggested I edit RadApp/components.yaml and RadApp/src/Components.yaml, but I don't know well what I am doing. If you can fix it up that would be great. Ben also said it may not need the GEOSgcm anymore, just chem and radiation? Perhaps discuss that with him? I remember that the effective radii are calculated in moist, but really, my opinion is that we should run with effective radii from ExtData, so probably gcm should not be needed. If the input history files for RadApp do not have effective radii, I think a replay run of the model must first be done to generate them! PS: it looks like it already knows about the chem repo but not the radiation repo. Thanks, Peter.


cp [FILE...] DIR

I cannot get that commandline to work. Tried like so, but it always prints the usage and exits, even when called "cp.py a b". Does [FILE...] eat up DIR?
#!/usr/bin/python

import sys
from docopt import docopt

help = 'Usage: %s [FILE...] DIR' % sys.argv[0]

args = docopt(help)

print(args)

Any solution for this problem?


Add filter margin start and end

Kind (Required)

Improvement

Overview (Required)

Links

We can use guideline 😄  https://github.com/DroidKaigi/conference-app-2020/blob/7a738455f7beefd7beb9db77b755298da6af9c4a/feature/session/src/main/res/layout/fragment_sessions.xml#L31-L44

🙋♂

Assigned↔


Add git version footer

Coverage increased (+0.3%) to 44.996% when pulling 7c05455d223f66364ccf325eca742c8f5eb42cef on version-tag into 3ca9dc9999f30c235592aab07ed706aae9553d15 on master.

Coverage increased (+0.3%) to 44.996% when pulling 4d2b55683d5dacf4434ec2d5352d48bbdc56be41 on version-tag into 3ca9dc9999f30c235592aab07ed706aae9553d15 on master.

Doesn't seem to work on heroku. Drop for now...


What about Linux??

This seems to only be relevant to Windows App Service plans- what about Linux? (this is actually a pervasive problem in the Azure documentation).

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: bddebdc5-6ef4-f612-64d8-937eaad6de7d
Version Independent ID: fba172bf-f982-a33f-1a46-edc6ef263702
Content: OS and runtime patching cadence - Azure App Service
Content Source: articles/app-service/overview-patch-os-runtime.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@ddorsett Thanks for the feedback! We are currently investigating and will update you shortly.

Thanks for reply! You may want to know that Linux apps in App Service run in their own containers. No access to the host operating system is allowed, you do have root access to the container. Likewise, for apps running in Windows containers, you have administrative access to the container but no access to the host operating system.
You may refer to below document link for App Service Linux and limitation,
https://docs.microsoft.com/en-us/azure/app-service/overview#app-service-on-linux

Thanks for reply! You may want to know that Linux apps in App Service run in their own containers. No access to the host operating system is allowed, you do have root access to the container. Likewise, for apps running in Windows containers, you have administrative access to the container but no access to the host operating system.
You may refer to below document link for App Service Linux and limitation,
https://docs.microsoft.com/en-us/azure/app-service/overview#app-service-on-linux

@ddorsett We will close this out but if you feel you need more information please just let us know.

@ddorsett We will close this out but if you feel you need more information please just let us know.


Support auto-decompression for upstream response body streams

C@E supports automatic decompression for response gzip compressed bodies for upstream responses. The Rust SDK exposes this via a method on the Request struct. For the JS runtime, it probably makes sense to expose this as an autoDecompress: 'gzip`` property on the Requestconstructor'sinit` parameter.

This should be simpler to support once the DecompressionStream pull-request is merged -> https://github.com/fastly/js-compute-runtime/pull/160

Could we use a special header for this? Even if we don't send such a header and instead use it as a request modification, it avoids going down non-spec API paths and using the existing extension space for HTTP.

Could we use a special header for this? Even if we don't send such a header and instead use it as a request modification, it avoids going down non-spec API paths and using the existing extension space for HTTP.

Great idea! We should likely do the same for setting the cache key and deprecate our Request.prototype.setCacheKey method

This was added in 3.2.0


Have a custom exception when a variable is not found using Dataset

So instead of a RuntimeError, we might have a VariableNotFoundError. This makes it more clear what is wrong, instead of a generic error. This is for the Dataset class, specifically when using Dataset.get_variable().

I accidentally did a run today where I pointed e3sm_diags at the wrong directory for the obs dataset, and it gave me like 100 pages of the same error. It might be worth it to do a quick sanity check at startup that the expected data files are in the location the user specifies, and give a nice "you done goofed" message.

Not needed, since the current error is already conveys this idea. Also, regardless of if a variable is missing, the error is still caught and handled correctly.


expire analytics cache after 60 minutes (DAT-19278)

Impact

[ ] Bug fix (non-breaking change which fixes expected existing functionality)
[x] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
Long running applications do not ever refresh the cached analytics configuration data. This PR adds a 60 minute expiration policy to the cached data.

Things to be aware of
The Cache class added in 4.30 is now deprecated, and the caffeine library is added instead.

Things to worry about

Additional Context

fwiw, a single element cache might view a caching library as too heavy-weight. If you needed a thread-safe, expiring Supplier, then you might consider mirroring the double-checked locking approach used in Guava's Suppliers.memoizeWithExpiration(supplier).

fwiw, a single element cache might view a caching library as too heavy-weight. If you needed a thread-safe, expiring Supplier, then you might consider mirroring the double-checked locking approach used in Guava's Suppliers.memoizeWithExpiration(supplier).

Thanks @ben-manes ! We had some plans of what we might do with caffeine going forward, which was part of the reason for bringing it in now. Unfortunately we still need to support Java 8, so it looks like that won't be an option. In any case, thanks for pointing out the Guava code, I'll review it.

Unfortunately we still need to support Java 8, so it looks like that won't be an option.

Caffeine 2.x is Java 8 based if you’d like to use that. In v3 we switched from Unsafe to VarHandles, removed deprecations, etc but it’s mostly equivalent between those major versions thanks to a n exhaustive test suite.


Issue list: hover hint prints optional for username

Hmm can't find this now. Need to figure out where to hover to trigger this before I can fix it.


value sqlDb is not a member of org.apache.spark.sql.DataFrameReader

I get this error while running in databricks notebook.
notebook:15: error: value sqlDb is not a member of org.apache.spark.sql.DataFrameReader
val collection = sqlContext.read.sqlDb(config)
I imported uber jar as library

Hi,
I am facing same issue as well. Followed documentation, built jar file and uploaded it nevertheless I am having same issue.
Could someone please look into it? Also it would be fantastic to add this library to maven, very unfortunate it is not there yet.
error: value sqlDb is not a member of org.apache.spark.sql.DataFrameReader
val collection = sqlContext.read.sqlDb(config)

I just copied it from documentation, looks like it was failing due to case sensitivity in my case.

I am also getting the same issue. Akuzhan - did you find a fix?

I ran into this as well, and it seems that the documentation page at the Microsoft docs site has incorrect casing, as @akuzhan mentioned. We can see here that we have to use "sqlDB" with a capital 'B'

I ran into this as well, and it seems that the documentation page at the Microsoft docs site has incorrect casing, as @akuzhan mentioned. We can see here that we have to use "sqlDB" with a capital 'B'

Thanks is solved me a big issue

Pull Request Opened: https://github.com/Azure/azure-sqldb-spark/pull/60

Closing this Issue as the corresponding PR has been merged. Thank you @gregl83 for your contribution!