After rebooting worker nodes msp in pending state and daemonset are unavailable

Describe the bug
We have previously installed mayastor on our on premise RKE cluster
After rebooting worker nodes we faced an issue-

msp status in pending state
daemonset are unavailable

To Reproduce
Steps to reproduce the behavior:
We need to reboot the worker nodes where storage blocks are present
Expected behavior
after rebooting the worker node, mayastor has to work smoothly and msp should shows in online status
Screenshots
after rebooting the worker nodes mayastor MSP status showing me as a pending
~# kubectl get msp -n mayastor -o wide
NAME                NODE   STATE     AGE
pool-on-node-wl01   wl01   pending   100d
pool-on-node-wl02   wl02   online    100d
pool-on-node-wl03   wl03   pending   100d

also below daemonset shows only 1 daeomonset is in ready status
NAME           DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                                         AGE
mayastor       3         3         1       2            1           kubernetes.io/arch=amd64,openebs.io/engine=mayastor   63d
mayastor-csi   3         3         3       3            3           kubernetes.io/arch=amd64                              97d

** OS info (please complete the following information):**

Distro: [e.g. NixOS] : rhel 8.2
Kernel version  - 5.4
MayaStor revision or container image
we have used mayastor v0.7 version

Additional context
we have checked below things

iscsi is running
hugepages are set - 2048
kubelet restarted

Do u suggest us any workaround so that even in the future if anyone reboot the worker nodes mayastor should work smoothly?
@jkryl  Thanks in advance

Hi @jkryl @gila, Hope you guys are doing good today!

Approach- delete mayastor, crd, namespace and recreate/reinstall mayastor
I have deleted everything including crd and namespace
tried to reinstall the mayastor from scratch
while installing mayastor again faced below issue:
mayastor daemonset is not running and going to in a loop

mayastor-czrdt          1/1     Running            1          23m
mayastor-brgrw          0/1     Error              5          23m
mayastor-brgrw          0/1     CrashLoopBackOff   5          23m
mayastor-czrdt          0/1     Error              1          24m
mayastor-czrdt          0/1     CrashLoopBackOff   1          24m
mayastor-czrdt          1/1     Running            2          24m

We can see below logs for the daemonset

#kubectl logs -f pod/mayastor-brgrw -n mayastor
[2021-06-11T07:22:43.668504167+00:00  INFO mayastor:main.rs:46] Starting Mayastor ..
[2021-06-11T07:22:43.668613480+00:00  INFO mayastor:main.rs:47] kernel io_uring support: no
[2021-06-11T07:22:43.668629087+00:00  INFO mayastor:main.rs:51] free_pages: 2048 nr_pages: 2048
thread 'main' panicked at 'Invalid Host Name: Custom { kind: Other, error: "failed to lookup address information: Name or service not known" }', mayastor/src/subsys/mbus/mod.rs:41:49
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

Describe the daemonse pod

kubectl describe ds/mayastor-brgrw -n mayastor
Events:
  Type     Reason     Age                  From               Message
  ----     ------     ----                 ----               -------
  Normal   Scheduled  30m                  default-scheduler  Successfully assigned mayastor/mayastor-brgrw to cpocwl02
  Normal   Pulling    30m                  kubelet            Pulling image "busybox:latest"
  Normal   Pulled     30m                  kubelet            Successfully pulled image "busybox:latest" in 3.98728808s
  Normal   Created    30m                  kubelet            Created container message-bus-probe
  Normal   Started    30m                  kubelet            Started container message-bus-probe
  Normal   Pulled     12m                  kubelet            Successfully pulled image "mayadata/mayastor:v0.7.0" in 2m12.734778131s
  Normal   Pulled     11m                  kubelet            Successfully pulled image "mayadata/mayastor:v0.7.0" in 3.069738739s
  Normal   Pulled     11m                  kubelet            Successfully pulled image "mayadata/mayastor:v0.7.0" in 4.257629762s
  Normal   Started    10m (x4 over 12m)    kubelet            Started container mayastor
  Normal   Pulled     10m                  kubelet            Successfully pulled image "mayadata/mayastor:v0.7.0" in 2.979018302s
  Normal   Pulling    9m28s (x5 over 14m)  kubelet            Pulling image "mayadata/mayastor:v0.7.0"
  Normal   Created    9m21s (x5 over 12m)  kubelet            Created container mayastor
  Normal   Pulled     9m21s                kubelet            Successfully pulled image "mayadata/mayastor:v0.7.0" in 6.804279623s
  Warning  BackOff    46s (x41 over 11m)   kubelet            Back-off restarting failed container

we can see the daemonset log below

# kubectl logs -n mayastor pod/mayastor-brgrw
[2021-06-11T10:33:30.306704036+00:00  INFO mayastor:main.rs:46] Starting Mayastor ..
[2021-06-11T10:33:30.306872051+00:00  INFO mayastor:main.rs:47] kernel io_uring support: no
[2021-06-11T10:33:30.306909127+00:00  INFO mayastor:main.rs:51] free_pages: 2048 nr_pages: 2048
thread 'main' panicked at 'Invalid Host Name: Custom { kind: Other, error: "failed to lookup address information: Name or service not known" }', mayastor/src/subsys/mbus/mod.rs:41:49
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

# kubectl logs -n mayastor pod/mayastor-czrdt
[2021-06-11T10:34:22.085561709+00:00  INFO mayastor:main.rs:46] Starting Mayastor ..
[2021-06-11T10:34:22.085666183+00:00  INFO mayastor:main.rs:47] kernel io_uring support: no
[2021-06-11T10:34:22.085686827+00:00  INFO mayastor:main.rs:51] free_pages: 1024 nr_pages: 1024
thread 'main' panicked at 'Invalid Host Name: Custom { kind: Other, error: "failed to lookup address information: Name or service not known" }', mayastor/src/subsys/mbus/mod.rs:41:49
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

before creating any pool on nodes it is picking previously created node-pools(while reinstalling)

kubectl get msp -n mayastor
NAME                NODE    STATE     AGE
pool-on-node-wl01   wl01   pending   102d
pool-on-node-wl02   wl02   pending   102d
pool-on-node-wl03   wl03   pending   102d

Could you suggest us anything here? Thanks

Hey @krishnakekan619, it seems like mayastor is not able to reach the nats service. The message has been improved recently but maybe you're still on an older version.
Would you please be able to check the state of the nats deployment?

Hi @jkryl @gila thanks for your immediate response

Yes previously i have installed mayastor v0.7 and i want to go with this version as of now.
below is nats deployment status

kubectl -n mayastor get pods --selector=app=nats
NAME                    READY   STATUS    RESTARTS   AGE
nats-6fdd6dfb4f-58rtp   1/1     Running   3          5h40m

- nats describe

kubectl describe pod/nats-6fdd6dfb4f-58rtp -n mayastor
Name:         nats-6fdd6dfb4f-58rtp
Namespace:    mayastor
Priority:     0
Node:         cpocwl01/xx.xx.xx.1
Start Time:   Fri, 11 Jun 2021 13:59:26 +0800
Labels:       app=nats
pod-template-hash=6fdd6dfb4f
Annotations:  cni.projectcalico.org/podIP: <IP_ADDRESS>/32
cni.projectcalico.org/podIPs: <IP_ADDRESS>/32
Status:       Running
IP:           <IP_ADDRESS>
IPs:
IP:           <IP_ADDRESS>
Controlled By:  ReplicaSet/nats-6fdd6dfb4f
Containers:
nats:
Container ID:   docker://5a3acc52d5093e394729b98157adc92b9b67067168ce594a103ab32f08f0015d
Image:          nats:2.1-alpine3.11
Image ID:       docker-pullable://nats@sha256:ebe6d1b23a177223608c68d8617049228b00ee54d4e758d2eca44238326b141b
Port:           4222/TCP
Host Port:      0/TCP
State:          Running
Started:      Fri, 11 Jun 2021 15:38:32 +0800
Last State:     Terminated
Reason:       Error
Exit Code:    2
Started:      Fri, 11 Jun 2021 15:30:27 +0800
Finished:     Fri, 11 Jun 2021 15:37:29 +0800
Ready:          True
Restart Count:  3
Environment:
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from default-token-x47dq (ro)
Conditions:
Type              Status
Initialized       True
Ready             True
ContainersReady   True
PodScheduled      True
Volumes:
default-token-x47dq:
Type:        Secret (a volume populated by a Secret)
SecretName:  default-token-x47dq
Optional:    false
QoS Class:       BestEffort
Node-Selectors:
Tolerations:     node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
- nats logs

kubectl logs pod/nats-6fdd6dfb4f-58rtp -n mayastor
[1] 2021/06/11 07:38:32.192405 [INF] Starting nats-server version 2.1.8
[1] 2021/06/11 07:38:32.192440 [INF] Git commit [c0b574f]
[1] 2021/06/11 07:38:32.192747 [INF] Starting http monitor on <IP_ADDRESS>:8222
[1] 2021/06/11 07:38:32.192815 [INF] Listening for client connections on <IP_ADDRESS>:4222
[1] 2021/06/11 07:38:32.192831 [INF] Server id is NBZZ7GL3DVUCGAK6TRHJ6CMBF6A4IR5TUJVR5JV3XFJ5YOA2FW2QDJ
[1] 2021/06/11 07:38:32.192835 [INF] Server is ready
[1] 2021/06/11 07:38:32.193029 [INF] Listening for route connections on <IP_ADDRESS>:6222
Any suggestions on this? Thanks

Could you please describe the nats service as well?
Also, if you could run a separate container and try to reach nats, eg: nc -vz nats 4222?
Alternatively, you could also kubectl -n mayastor delete pod mayastor-xxxxxx and that should trigger the init-container to run again, and the init-container will probe nats for you.

hi @jkryl @gila Thanks for your quick response,
i ran the another pod and tried netcat command and it s working -> below is the output:
[root@centos-01 /]# nc -vz <IP_ADDRESS> 4222
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to <IP_ADDRESS>:4222.
Ncat: 0 bytes sent, 0 bytes received in 0.02 seconds

delete mayastor pods
kubectl delete pod/mayastor-4g9sv -n mayastor
pod "mayastor-4g9sv" deleted

kubectl delete pod/mayastor-ks4cd -n mayastor
pod "mayastor-ks4cd" deleted

status of daemonset pods
kubectl get pods -n mayastor -w
NAME                    READY   STATUS     RESTARTS   AGE
mayastor-5dr45          0/1     Init:0/1   0          105s
mayastor-5qf82          0/1     Init:0/1   0          81s

events of daemonset pods are still the same
Events:
  Type    Reason     Age   From               Message
  ----    ------     ----  ----               -------
  Normal  Scheduled  2m1s  default-scheduler  Successfully assigned mayastor/mayastor-5dr45 to cpocwl01
  Normal  Pulled     2m1s  kubelet            Container image "busybox:latest" already present on machine
  Normal  Created    2m    kubelet            Created container message-bus-probe
  Normal  Started    2m    kubelet            Started container message-bus-probe

couldyou please provice us any other pointers on this? thanks

can you get the logs from those pods now? It seems like they can't reach the nats service.
Seems like the DNS service is not resolving nats?

Hi @gila
previously running daemonset pod logs are below
# kubectl logs -n mayastor pod/mayastor-brgrw
[2021-06-11T10:33:30.306704036+00:00  INFO mayastor:main.rs:46] Starting Mayastor ..
[2021-06-11T10:33:30.306872051+00:00  INFO mayastor:main.rs:47] kernel io_uring support: no
[2021-06-11T10:33:30.306909127+00:00  INFO mayastor:main.rs:51] free_pages: 2048 nr_pages: 2048
thread 'main' panicked at 'Invalid Host Name: Custom { kind: Other, error: "failed to lookup address information: Name or service not known" }', mayastor/src/subsys/mbus/mod.rs:41:49
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

# kubectl logs -n mayastor pod/mayastor-czrdt
[2021-06-11T10:34:22.085561709+00:00  INFO mayastor:main.rs:46] Starting Mayastor ..
[2021-06-11T10:34:22.085666183+00:00  INFO mayastor:main.rs:47] kernel io_uring support: no
[2021-06-11T10:34:22.085686827+00:00  INFO mayastor:main.rs:51] free_pages: 1024 nr_pages: 1024
thread 'main' panicked at 'Invalid Host Name: Custom { kind: Other, error: "failed to lookup address information: Name or service not known" }', mayastor/src/subsys/mbus/mod.rs:41:49
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Currently available daemonset pod logs
kubectl logs -n mayastor pod/mayastor-5dr45
Error from server (BadRequest): container "mayastor" in pod "mayastor-5dr45" is waiting to start: PodInitializing

kubectl logs -n mayastor pod/mayastor-5qf82
Error from server (BadRequest): container "mayastor" in pod "mayastor-5qf82" is waiting to start: PodInitializing

nats logs are already given in above comment,
let me know if any other logs do you want?

I need the pods from the init-container, you need to specify it:
kubectl -n mayastor logs mayastor-5qf82 -c message-bus-probe

hi @gila below is logs you have asked for
# kubectl -n mayastor logs mayastor-5qf82 -c message-bus-probe
Waiting for message bus...
nc: bad address 'nats'
Waiting for message bus...
nc: bad address 'nats'
nc: bad address 'nats'
Waiting for message bus...

# kubectl -n mayastor logs mayastor-5dr45 -c message-bus-probe
nc: bad address 'nats'
Waiting for message bus...
nc: bad address 'nats'
Waiting for message bus...
nc: bad address 'nats'
Waiting for message bus...
nc: bad address 'nats'
Waiting for message bus...

hmm this seems to be some kind of DNS issue if we can't access nats by name..

hi @tiagolobocastro, @jkryl  i can access nats service by its name i.e. nats

by ip

[root@centos /]# nc -vz <IP_ADDRESS> 4222
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to <IP_ADDRESS>:4222.
Ncat: 0 bytes sent, 0 bytes received in 0.02 seconds.

by name

[root@centos /]# nc -vz nats 4222
Ncat: Version 7.50 ( https://nmap.org/ncat )
Ncat: Connected to <IP_ADDRESS>:4222.
Ncat: 0 bytes sent, 0 bytes received in 0.02 seconds.

conf file of other pod
[root@centos /]# cat /etc/resolv.conf
nameserver <IP_ADDRESS>
search mayastor.svc.cluster.local svc.cluster.local cluster.local
options ndots:5

Could you please suggest any woraround because service is able to access by other pods and connectivty is happening
Thanks,

@krishnakekan619 I've had a similar issue today, strangely enough. I had to restart kube-router and coredns pods and then the services we're able to resolve properly.

@gila we have restarted our dns-utils pods several times but still the error persists.

we dont have kube-router thing in our environment as we have RKE managed cluster
Let me know if you have any other suggestions or workaround, Thanks


shortcut named Electron

On the desktop I have 2 shortcuts: one with the right name (from --win32metadata.ProductName="Bayam") but also another desktop icon pointing to my app name Electron?
Not sure what is happening?

I think this helps you.


feat: Prereleases, node16

I appreciate you making and sharing this.

support bumping versions that look like 1.2.3-disttag and 1.2.3-disttag.0
bump node12 to node16 because [12 is deprecated](https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/

big change: Since semver was already a dependency, I used it for this logic.  That probably has other (hopefully positive) side-effects besides pre-release support.
fix #104
fix #38
fix: #159

Testing
I couldn't get the act tests to run correctly.  This has only been tested manually.
fyi
➜  conventional-changelog-action git:(prereleases) ✗ act -j test-json -P ubuntu-latest=nektos/act-environments-ubuntu:18.04 -s github_token=fake-token
[Test the action/test-json] 🚀  Start image=nektos/act-environments-ubuntu:18.04
[Test the action/test-json]   🐳  docker pull image=nektos/act-environments-ubuntu:18.04 platform= username= forcePull=false
[Test the action/test-json]   🐳  docker create image=nektos/act-environments-ubuntu:18.04 platform= entrypoint=["/usr/bin/tail" "-f" "/dev/null"] cmd=[]
[Test the action/test-json]   🐳  docker run image=nektos/act-environments-ubuntu:18.04 platform= entrypoint=["/usr/bin/tail" "-f" "/dev/null"] cmd=[]
[Test the action/test-json] ⭐ Run Main Checkout code
[Test the action/test-json]   🐳  docker cp src=/Users/shane.mclaughlin/eng/conventional-changelog-action/. dst=/Users/shane.mclaughlin/eng/conventional-changelog-action
[Test the action/test-json]   ✅  Success - Main Checkout code
[Test the action/test-json] ⭐ Run Main npm ci --prod
[Test the action/test-json]   🐳  docker exec cmd=[bash --noprofile --norc -e -o pipefail /var/run/act/workflow/1] user= workdir=
| npm WARN prepare removing existing node_modules/ before installation
| npm ERR! code E404
| npm ERR! 404 Not Found - GET https://npm.pkg.github.com/@actions%2fcore - npm package "core" does not exist under owner "actions"
| npm ERR! 404
| npm ERR! 404  '<EMAIL_ADDRESS>is not in the npm registry.
| npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
| npm ERR! 404
| npm ERR! 404 Note that you can also install from a
| npm ERR! 404 tarball, folder, http url, or git url.

This would be great if would be integrated!


⚠ Turnos 24x7 has degraded performance

In 1a81462, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 913 ms

Resolved: Turnos 24x7 performance has improved in 0ad32e3.


ci_microshift: Remove crc domain after bundle creation

We need to remove the crc domain which is created as part of bundle creation process otherwise we are not able to test the this bundle with crc binary which also want to create same domain and fails with following error
 level=info msg="Creating CRC VM for MicroShift 4.13.4..."
Error creating machine: Error in driver during machine creation: virError(Code=9, Domain=20, Message='operation failed: domain 'crc' already exists with uuid 5ab0edb0-4c93-484f-8563-a91529d467ba')

/cherry-pick release-4.14

/retest

/lgtm
/approve


Full value list

Index
Name used by Among Us
Type
Comment

0
lastPlayerName
String

1
touchConfig
int

2
colorConfig
uint

3
ignored unknown

Default 1

4
ignored sendName
bool
Default False

5
ignored sendTelemetry
bool
Default False

6
ignored sendDataScreen
bool
Default False

7
showAdsScreen
bit flags
Personalized 0x00, NonPersonalized 0x01, Accepted 0x80, Purchased 0x82

8
showMinPlayerWarning
bool

9
showOnlineHelp
bool

10
lastHat
uint

11
sfxVolume
byte

12
musicVolume
byte

13
joyStickSize
float

14
lastGameStart
long
Ticks since last game started. Used to check if left game too early

15
lastSkin
uint

16
lastPet
uint

17
censorChat
bool

18
lastLanguage
uint

19
vsync
bool

as of v2020.9.22
Types are .NET types

Thank you for this, I just updated the README to add this.
Very much appreciated


[bug]:  unable to determine if bitcoind is pruned: unable to detect bitcoind version: json: cannot unmarshal array into Go struct field GetNetworkInfoResult.warnings

Background
Tried to start lnd after not using it since version 0.17.4 and got this error:

#Attempting automatic RPC configuration to bitcoind
Automatically obtained bitcoind's RPC credentials
2024-11-27 02:02:37.096 [WRN] LTND: Config 'bitcoin.active' is deprecated, please remove it
2024-11-27 02:02:37.096 [INF] LTND: Version: 0.18.3-beta commit=v0.18.3-beta, build=production, logging=default, debuglevel=info
2024-11-27 02:02:37.097 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2024-11-27 02:02:37.097 [INF] RPCS: RPC server listening on <IP_ADDRESS>:10009
2024-11-27 02:02:37.101 [INF] RPCS: gRPC proxy started at <IP_ADDRESS>:8080
2024-11-27 02:02:37.101 [INF] LTND: Opening the main database, this might take a few minutes...
2024-11-27 02:02:37.101 [INF] LTND: Opening bbolt database, sync_freelist=false, auto_compact=false
2024-11-27 02:02:37.142 [INF] LTND: Creating local graph and channel state DB instances
2024-11-27 02:02:37.205 [INF] CHDB: Checking for schema update: latest_version=31, db_version=31
2024-11-27 02:02:37.205 [INF] CHDB: Checking for optional update: prune_revocation_log=false, db_version=empty
2024-11-27 02:02:37.209 [INF] LTND: Database(s) now open (time_to_open=107.850799ms)!
2024-11-27 02:02:37.209 [INF] LTND: Attempting automatic wallet unlock with password provided in file
2024-11-27 02:02:37.806 [INF] LNWL: Opened wallet
2024-11-27 02:02:37.863 [ERR] LTND: unable to create partial chain control: unable to determine if bitcoind is pruned: unable to detect bitcoind version: json: cannot unmarshal array into Go struct field GetNetworkInfoResult.warnings of type string
2024-11-27 02:02:37.864 [ERR] LTND: Shutting down because error in main method: error creating wallet config: unable to create partial chain control: unable to determine if bitcoind is pruned: unable to detect bitcoind version: json: cannot unmarshal array into Go struct field GetNetworkInfoResult.warnings of type string
2024-11-27 02:02:37.867 [INF] LTND: Shutdown complete
error creating wallet config: unable to create partial chain control: unable to determine if bitcoind is pruned: unable to detect bitcoind version: json: cannot unmarshal array into Go struct field GetNetworkInfoResult.warnings of type string

Now i am not able to start version 0.17.4 any more because it says watchtower version is too new.
Your environment
0.18.3
Linux 6.12.1-2-MANJARO #1 SMP PREEMPT_DYNAMIC Sat, 23 Nov 2024 09:21:40 +0000 x86_64 GNU/Linux
28.0
Steps to reproduce
start lnd

See this issue: https://github.com/lightningnetwork/lnd/issues/9163
The first release candidate for lnd v0.18.4 (includes the fix) is out. Until the final version of that is released, you can implement this work around: https://github.com/lightningnetwork/lnd/issues/9163#issuecomment-2395220899

thanks, never would have even known about this issue if i had just grabbed the latest  version, it works.


CentOS 7 problems

Hi,
First, thank you very much for this fine piece of work! It's been a great help to me.
I was today experimenting with the several docker APIs offered by your module and it seems that two of them don't work in CentOS 7. I presume that this is perhaps more a systemd issue than anything else.
In response to, for example, si.dockerContainers('all', function(d) { console.log(d); }) I see:
Promise { <pending> }
> []

I get the same empty promise array in response to .dockerAll(cb). But .dockerContainerStats(ctrID, cb) seems to work fine.
All API calls work properly on CentOS 6 (and on Ubuntu 16.04).
Do these phenomena comport with your experience? If this is a valid new issue, is it something that can be fixed without too much work?
Thank you again.
Cordially,
Paul

Hmm...perhaps not systemd related. After all, Ubuntu 16.04 is systemd-based and things work there.

Hi Paul,
Thank you for reporting this bug. Yes, this is new to me so I need to "dive" into it tomorrow. If I have any further questions, is it ok to ask you for details??
Sebastian

Am 27.10.2016 um 15:52 schrieb moonlitSpider<EMAIL_ADDRESS>Hmm...perhaps not systemd related. After all, Ubuntu 16.04 is systemd-based and things work there.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Hi Sebastian,
Absolutely fine to ask further questions!
I will also later today confirm my findings. I'm pretty sure I did things "right", but will double-check. I don't want to waste your time.
Cordially,
Paul
On Oct 27, 2016, at 12:29 PM, "Sebastian Hildebrandt" <notifications<EMAIL_ADDRESS>wrote:
Hi Paul,
Thank you for reporting this bug. Yes, this is new to me so I need to "dive" into it tomorrow. If I have any further questions, is it ok to ask you for details??
Sebastian

Am 27.10.2016 um 15:52 schrieb moonlitSpider <notifications<EMAIL_ADDRESS>Hmm...perhaps not systemd related. After all, Ubuntu 16.04 is systemd-based and things work there.

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/sebhildebrandt/systeminformation/issues/13#issuecomment-256697363, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AQ8fDhC01npkLR-vYnmRnsE7U5qLvzjbks5q4NFigaJpZM4KiPkM.
CATALOGIC SOFTWARE, ATTENTION::----- The information contained in this message (including any files transmitted with this message) may contain proprietary, trade secret or other confidential and/or legally privileged information. Any pricing information contained in this message or in any files transmitted with this message is always confidential and cannot be shared with any third parties without prior written approval from Catalogic Software. This message is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any use, disclosure, copying or distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and/or Catalogic Software and destroy all copies of this message in your possession, custody or control.

Hi Sebastian,
I double-checked. Shell output below.
Thank you for your work on this; and thanks again for 'si'!
-Paul
rpm --query centos-release
centos-release-7-2.1511.el7.centos.2.10.x86_64
[root@71 ecomon]# node
> var si = require('systeminformation');
> si.dockerContainers('all', function(d) { console.log(d); })
Promise { <pending> }
> []

> si.dockerContainerStats('e6fd6dc70289', function(d) { console.log(d); })
Promise { <pending> }
> { id: 'e6fd6dc70289',
  mem_usage: 0,
  mem_limit: 0,
  mem_percent: 0,
  cpu_percent: 0,
  pids: 0,
  netIO: { rx: 0, wx: 0 },
  blockIO: { r: 0, w: 0 } }

> si.dockerAll( function(d) { console.log(d); })
Promise { <pending> }
> []

Hi Paul,
Thank you for double checking again! Under the hood I do the following: I am calling the official docker API to get the information and I do pretty much the same in si.dockerContainers and si.dockerContainerStats.  So this is a little bit strange to me right now.
Can you check if the following two commands on the command line in CentOS 7 as well as CentOS6?:
curl --unix-socket /var/run/docker.sock http:/containers/json?all=1
curl --unix-socket /var/run/docker.sock http:/containers/e6fd6dc70289/stats?stream=0

The value in the second command after "container" should be the ID of one of your containers.
Can you also provide the following on both systems (also command line)?
node -v
docker version

Thank you so much for your support to improve this package!
Sebastian

Hi Sebastian,
Sorry for the delayed reply.
In reviewing my work on this, it's clear that some of what I said was confused. In fact, I am not even running Docker on CentOS 6! Consequently, the comparison is between Ubuntu 16.04 and CentOS 7. That said, the behavior I described above for these 2 systems is accurate.
 I am having some difficulty upgrading to this version. More later.
-Paul

OK, on the Ubuntu system the two curl commands produce meaningful output from Docker. But I am still working on upgrading the CentOS 7 version of curl.
-Paul

Hi, thank you for your input! Well, before upgrading curl: it would be super, if I can find a workaround with exact this older version of curl. Maybe you are not the only one who has this installed and it should work also with older versions ;-) My suggestion: I will make a research on what I can modify and if I have a solution, you can test it without having to upgrade curl. What do you think?
Thank you in advance

Fine by me, Sebastian; happy to help.
While we're at it.....I was wondering about an enhancement to si's docker API. Might it be possible to get a list of the processes that are running inside a container, ideally along with their external (host) PIDs and internal (container) PIDs?
One way I could do this might be via the Node package dockerode's exec interface to Docker, e.g., 'docker exec CTRID ps aux'. )
But if you are amenable to implementing such an API in si, I will open a separate issue for this.
Thanks.
-Paul

Fine! I will contact you as soon as I have a possible solution for the "curl" problems.
"Inside Docker" Processes - I will add this to my todo-list! nice idea!
No need to open an issue for that ;-)

Hi again. It is pretty much clear, that there are workarounds to the curl problem. The only thing is, that I do not want to add dependencies, so I do have to write a little bit more code. Hope that it is OK to have a little delay in solving this problem.

Hi Sebastian,
Absolutely fine, please take your time.
My chief concern in all of this is getting systeminformation to behave (WRT Docker containers) on CentOS 7 the way it behaves on Ubunutu 16.04.
Thanks again.
-Paul

Hi Paul,
I worked on a workaround (not relying on curl), and maybe you can test the following GIST:
https://gist.github.com/sebhildebrandt/19aabd5d0068e438deae69993e00a696
Here you have 2 files. In the file testDocker.js, you need to edit the ID if the container you would like to have statistics for (line 13). Then just fire it with node testDocker
If you get reasonable results on your different machines, this could be the solution. If you see any errors, it would be nice to post the results. Thank you for any feedback.

Hi Sebastian,
Wow; this looks very promising; thanks very much!
I've tested the gist. I do not presently have an account there, so please forgive this lengthy paste (see below). I've prefixed my comments about the output with a pound sign.
Observations:

I hate to ask this (no good deed goes unpunished!), but could these 'new' stats also include the old (as per systeminformation) mem_usage, mem_limit, mem_percent, and cpu_percent? I suppose they might be derivable from the stats you are now showing....but the old metrics, as a simple summary were quite handy.
Near the top of the new output, did you mean percpu_stats rather than precpu_stats.
I will try the new code on Ubuntu 16.04.1 within next 24 hours.

Cordially,
Paul
# Via si on CentOS 7

> si.dockerContainerStats('401187a942f6', function(d) { console.log(d); })
Promise { <pending> }
> { id: '401187a942f6',
  mem_usage: 0,
  mem_limit: 0,
  mem_percent: 0,
  cpu_percent: 0,
  pids: 0,
  netIO: { rx: 0, wx: 0 },
  blockIO: { r: 0, w: 0 } }

# Via testDocker and dockerSocket.js on CentOS 7

node testDocker.js
STATS -----------------------------------------------------
{
  "read": "2016-11-01T19:56:59Z",
  "precpu_stats": {
    "cpu_usage": {
      "total_usage":<PHONE_NUMBER>52,
      "percpu_usage": [
<PHONE_NUMBER>89,
<PHONE_NUMBER>62,
<PHONE_NUMBER>88,
<PHONE_NUMBER>13
      ],
      "usage_in_kernelmode":<PHONE_NUMBER>00,
      "usage_in_usermode":<PHONE_NUMBER>00
    },
    "system_cpu_usage":<PHONE_NUMBER>000000,
    "throttling_data": {
      "periods": 0,
      "throttled_periods": 0,
      "throttled_time": 0
    }
  },
  "cpu_stats": {
    "cpu_usage": {
      "total_usage":<PHONE_NUMBER>48,
      "percpu_usage": [
<PHONE_NUMBER>65,
<PHONE_NUMBER>84,
<PHONE_NUMBER>88,
<PHONE_NUMBER>11
      ],
      "usage_in_kernelmode":<PHONE_NUMBER>00,
      "usage_in_usermode":<PHONE_NUMBER>00
    },
    "system_cpu_usage":<PHONE_NUMBER>000000,
    "throttling_data": {
      "periods": 0,
      "throttled_periods": 0,
      "throttled_time": 0
    }
  },
  "memory_stats": {
    "usage": 84111360,
    "max_usage": 85434368,
    "stats": {
      "active_anon": 39419904,
      "active_file": 1081344,
      "cache": 44593152,
      "hierarchical_memory_limit":<PHONE_NUMBER>854776000,
      "hierarchical_memsw_limit":<PHONE_NUMBER>854776000,
      "inactive_anon": 0,
      "inactive_file": 43511808,
      "mapped_file": 11603968,
      "pgfault": 38729892,
      "pgmajfault": 31,
      "pgpgin": 205626,
      "pgpgout": 194306,
      "rss": 39448576,
      "rss_huge": 37748736,
      "swap": 0,
      "total_active_anon": 39419904,
      "total_active_file": 1081344,
      "total_cache": 44593152,
      "total_inactive_anon": 0,
      "total_inactive_file": 43511808,
      "total_mapped_file": 11603968,
      "total_pgfault": 38729892,
      "total_pgmajfault": 31,
      "total_pgpgin": 205626,
      "total_pgpgout": 194306,
      "total_rss": 39448576,
      "total_rss_huge": 37748736,
      "total_swap": 0,
      "total_unevictable": 0,
      "unevictable": 0
    },
    "failcnt": 0,
    "limit":<PHONE_NUMBER>8
  },
  "blkio_stats": {
    "io_service_bytes_recursive": [
      {
        "major": 8,
        "minor": 0,
        "op": "Read",
        "value": 16384
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Write",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Sync",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Async",
        "value": 16384
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Total",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Read",
        "value": 16384
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Write",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Sync",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Async",
        "value": 16384
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Total",
        "value":<PHONE_NUMBER>
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Read",
        "value": 24576
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Write",
        "value": 0
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Async",
        "value": 24576
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Total",
        "value": 24576
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Read",
        "value": 24576
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Write",
        "value": 0
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Async",
        "value": 24576
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Total",
        "value": 24576
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Read",
        "value": 44849152
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Write",
        "value": 0
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Async",
        "value": 44849152
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Total",
        "value": 44849152
      }
    ],
    "io_serviced_recursive": [
      {
        "major": 8,
        "minor": 0,
        "op": "Read",
        "value": 4
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Write",
        "value": 500998
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Sync",
        "value": 500998
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Async",
        "value": 4
      },
      {
        "major": 8,
        "minor": 0,
        "op": "Total",
        "value": 501002
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Read",
        "value": 4
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Write",
        "value": 500998
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Sync",
        "value": 500998
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Async",
        "value": 4
      },
      {
        "major": 253,
        "minor": 0,
        "op": "Total",
        "value": 501002
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Read",
        "value": 4
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Write",
        "value": 0
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Async",
        "value": 4
      },
      {
        "major": 7,
        "minor": 0,
        "op": "Total",
        "value": 4
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Read",
        "value": 4
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Write",
        "value": 0
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Async",
        "value": 4
      },
      {
        "major": 253,
        "minor": 2,
        "op": "Total",
        "value": 4
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Read",
        "value": 772
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Write",
        "value": 0
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Sync",
        "value": 0
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Async",
        "value": 772
      },
      {
        "major": 253,
        "minor": 7,
        "op": "Total",
        "value": 772
      }
    ],
    "io_queue_recursive": [],
    "io_service_time_recursive": [],
    "io_wait_time_recursive": [],
    "io_merged_recursive": [],
    "io_time_recursive": [],
    "sectors_recursive": []
  },
  "pids_stats": {},
  "networks": {
    "eth0": {
      "rx_bytes": 3282,
      "rx_packets": 41,
      "rx_errors": 0,
      "rx_dropped": 0,
      "tx_bytes": 648,
      "tx_packets": 8,
      "tx_errors": 0,
      "tx_dropped": 0
    }
  }
}
END -- STATS ----------------------------------------------

# For purposes of comparison: 'docker stats' for the same container as above; CentOS 7

[root@71 ecomon]# nano testDocker.js
[root@71 ecomon]# docker stats 401187a942f6
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.27%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.27%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.28%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.28%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.29%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.29%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.97 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.29%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.29%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.28%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.28%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.31%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0
CONTAINER           CPU %               MEM USAGE / LIMIT    MEM %               NET I/O             BLOCK I/O             PIDS
401187a942f6        0.29%               83.98 MB / 16.6 GB   0.51%               3.282 kB / 648 B    44.93 MB / 6.553 GB   0

# Via si on Ubuntu 16.04.1

> si.dockerContainerStats('5d37a0c74341', function(d) {console.log(d)} )
Promise { <pending> }
>
> { id: '5d37a0c74341',
  mem_usage: 72798208,
  mem_limit:<PHONE_NUMBER>2,
  mem_percent: 0.4326281411059536,
  cpu_percent: 0.0038676910794075503,
  pids: 19,
  netIO: { rx: 1296, tx: 648 },
  blockIO: { r: 0, w: 35332096 } }

Hi again, great that we have results on CentOS7 now. The purpose of this GIST is only to check, if I can connect to the socket and get data from the API. When this really works, I will put this INSTEAD of curl. The data processing and the data you get back from systeminformation will NOT change, so YES, you will have the same stats as you had before in systeminformation (hope this answers your question 1).
To make one more comment. The results you see from the GIST is, what the API gives back (the same as I got back with CURL). Only the method how I connect to the API is different. So to your question 2: this is the original data from docker :-)
And concerning 3.: thank you so much! Really appreciate your help here!

Understood, thanks.
Some of that 'raw' Docker info is quite cool, errr...I mean useful. Might it be possible through si's API to request it, e.g., a flag that says 'include the raw data'?
And concerning 3, please, no thanks are necessary. I am delighted & grateful to have found systeminformation and am only too happy to help.
-Paul

Concerning list of processes inside Docker:
... ideally along with their external (host) PIDs and internal (container) PIDs?
I am working on this already but discovered one problem: it seems to be difficult to get the host PID AND the containers PID at the same time. From the API I do get the host PID and when running docker exec I get the containers PID (starting with 1) ... hmmmm (I tried all parameters)
I need to make a decision, which way to go. To be consistent with the other stats, I would like to work with the API (which means only having the host PID).
What do you think?

Hi Sebastian,
Yeah, I think host PID is sufficient.
As you doubtless know, the origin 1 PIDs within the container belong to its pid_namespace. Realistically, they're probably not of that much use.
Thanks.
-Paul

Just updated systeminformation ...

no longer depends on curl (version conflicts)
extended docker stats

Docker process information will follow in the next few days.
Will close this issue for now, OK?

Beautiful; thanks.
I'll give it a spin over next day or two.
-pb

From: Sebastian Hildebrandt<EMAIL_ADDRESS>Sent: Wednesday, November 2, 2016 7:27:12 AM
To: sebhildebrandt/systeminformation
Cc: Bell, Paul; Author
Subject: Re: [sebhildebrandt/systeminformation] CentOS 7 problems (#13)
Just updated systeminformation ...

no longer depends on curl (version conflicts)
extended docker stats

Docker process information will follow in the next few days.
Will close this issue for now, OK?

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/sebhildebrandt/systeminformation/issues/13#issuecomment-257838908, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AQ8fDkQA4b_WO4BWAG5xjUwaDu8tWZVtks5q6HOQgaJpZM4KiPkM.
CATALOGIC SOFTWARE, ATTENTION::----- The information contained in this message (including any files transmitted with this message) may contain proprietary, trade secret or other confidential and/or legally privileged information. Any pricing information contained in this message or in any files transmitted with this message is always confidential and cannot be shared with any third parties without prior written approval from Catalogic Software. This message is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any use, disclosure, copying or distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and/or Catalogic Software and destroy all copies of this message in your possession, custody or control.

Me once again ...
I just released version 3.8 with a new function dockerContainerProcesses(id) which gives back all processes with detail information inside a specific container.
And: dockerAll() is also updated. Here you get an array of all containers including their stats and processes.
Hope this helps ... and feedback is welcome ;-)

That's terrific, Sebastian; thanks very much!
I will definitely try this out over the weekend and it will most definitely help.
-Paul

Hi Sebastian,
Very nice, and very helpful.
If I am interpreting the phenomena correctly, dockerAll has been enhanced to include a processes object (array) that shows metrics about the host processes running in the container. This array is also available by itself via the new dockerContainerProcesses API.
Thanks again!
-Paul

dockerAll: yes you are absolutely right. dockerAll is just a convenient way of getting it all in one single step. All containers (including the stopped ones), their stats and processes.
One more thing: If you only need the docker part of systeminformation, I created a new npm module called dockerstats for that ;-)


[BUG] FileInfo seems locking files

FileInfo seems locking files
FileInfo is not supposed to lock a file. However, in this case, the scope of FileInfo did trigger unintended file locking.
Reproduce

Go to appsettings.json
Set SecondsBeforeTimeout to 1
Uncomment out the statements https://github.com/Banyc/LinkDownloader/blob/master/src/LinkDownloader/App.cs#L83-L84
Comment out the statements https://github.com/Banyc/LinkDownloader/blob/master/src/LinkDownloader/App.cs#L88-L89
run dotnet run
Wait for a while.

Can you please reduce this to a simple few line repro app?

Can you please reduce this to a simple few line repro app?

I tried removing WebClient object and it works well without having IO exceptions. Therefore, WebClient must be included.
Most of the codes are unrelated to this problem. The main logic only happens here https://github.com/Banyc/LinkDownloader/blob/master/src/LinkDownloader/App.cs#L69-L162 and the FileInfo extension.

@Banyc if you can find a way to simplify the repro to a minimal one, that would be great.
What OS are you running this in?
Since this is in a loop, I wonder if the issue is because of a race condition - the code is expecting to move or copy much faster than the OS can handle it. AFAIK, there is no guarantee the OS will perform the requested task exactly when you make the call, it may be queued.
cc @Jozkee

I was running it on Windows. Since it was too long ago, I am not currently engaged in this issue. By the way, as in the other issue I have raised, they said WebClient is not recommended.

Ok thanks, @Banyc. I'll close the issue.


Merge the release-4.6.1-alpha branch back to 4.6.x

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: ashensw:x: wso2-jenkins-botYou have signed the CLA already but the status is still pending? Let us recheck it.


Issue3cleaning

Created modules folder, moved python files there and added files for circleci

@RoranDangerous You added a bunch of cache files and test_output files which should not have been added to git. These should not be pushed into the repo. Fix this and I'll reopen the pull request.

@RoranDangerous You should also add these files to the .gitignore file. Docs Here


Add CoreDNS server to docker-compose.yml

It would be useful to have a local DNS server we can run automated integration tests against in the docker-compose.yml file.

Look into testing all of the edge cases with unit tests and mocks instead of in docker-compose.yml.

Closing in favor of #3342 per discussion today


vm list provides too much information?

My 1366x768 screen is not enough to display vm list in a single line.
cm> vm list
+---------------------------+----------+----------------------------+--------------------------------------+----------+----------------------------+-----------+----------------------------------------------------------+-----------------------+----------------------+---------+
| name                      | status   | addresses                  | id                                   | flavor   | image                      | user_id   | metadata                                                 | key_name              | created              | cloud   |
+===========================+==========+============================+======================================+==========+============================+===========+==========================================================+=======================+======================+=========+
| hrlee_x                   | ACTIVE   | 10.39.1.xx, 149.165.15x.xx | b8f840a3-7ae9-4219-xxxx-3050d5e9xx8x | m1.small | futuresystems/ubuntu-14.04 | hrlee     | {u'cm_owner': u'hrlee', u'cm_group': u'mongodb_cluster'} | hrlee-india-key | 2015-01-10T00:30:55Z | india   |
+---------------------------+----------+--

Can we select a few columns to display minimal information in a default vm list?

Got it.
2015-01-21 11:31 GMT-05:00 Hyungro Lee<EMAIL_ADDRESS>
Assigned #183 https://github.com/cloudmesh/cloudmesh/issues/183 to
@markxiao https://github.com/markxiao.
—
Reply to this email directly or view it on GitHub
https://github.com/cloudmesh/cloudmesh/issues/183#event-222427997.

i propose to display
Name
Status
Addresses
Flavor
in —all you do all as you show
in —columns=name,status,... you may select named columns

On Jan 21, 2015, at 11:33 AM, Mark Yukai Xiao<EMAIL_ADDRESS>wrote:
Got it.
2015-01-21 11:31 GMT-05:00 Hyungro Lee<EMAIL_ADDRESS>
Assigned #183 https://github.com/cloudmesh/cloudmesh/issues/183 to
@markxiao https://github.com/markxiao.
—
Reply to this email directly or view it on GitHub
https://github.com/cloudmesh/cloudmesh/issues/183#event-222427997.

—
Reply to this email directly or view it on GitHub https://github.com/cloudmesh/cloudmesh/issues/183#issuecomment-70870186.


Docker container is unremovable (docker-in-docker, aufs)

I'm running docker-in-docker (not sure if bare docker hits the issue too) on aufs storage driver, and frequently (more than once a day) one of the containers become unremovable.  More info:
docker info
docker info
Containers: 57
 Running: 0
 Paused: 0
 Stopped: 57
Images: 8
Server Version: 1.10.3
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 194
 Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 3.19.0-56-generic
Operating System: Alpine Linux v3.3
OSType: linux
Architecture: x86_64
CPUs: 24
Total Memory: 62.82 GiB
Name: 3470421a6dc6
ID: YMAO:PRWC:6LQS:VPSR:KXWR:ZD45:ROG7:L322:5K2N:MBXH:SNHZ:FWTW
WARNING: No swap limit support
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

Parent docker
$ DOCKER_HOST= docker info
Containers: 18
 Running: 17
 Paused: 0
 Stopped: 1
Images: 8
Server Version: 1.10.0
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 71
 Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 3.19.0-56-generic
Operating System: Ubuntu 14.04.4 LTS
OSType: linux
Architecture: x86_64
CPUs: 24
Total Memory: 62.82 GiB
Name: slk80-5
ID: UU7P:A2L6:W3YK:MBJR:DT5L:7E26:PJYV:4SUB:QKMX:RNM3:V7NA:FS5I
WARNING: No swap limit support

docker version
$ docker version
Client:
 Version:      1.10.0
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   590d5108
 Built:        Thu Feb  4 18:36:33 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.10.3
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   20f81dd
 Built:        Thu Mar 10 21:49:11 2016
 OS/Arch:      linux/amd64

Parent docker version
$ DOCKER_HOST= docker version
Client:
 Version:      1.10.0
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   590d5108
 Built:        Thu Feb  4 18:36:33 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.10.0
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   590d5108
 Built:        Thu Feb  4 18:36:33 2016
 OS/Arch:      linux/amd64

** Symptom
One of the containers become unremovable.
$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
9a1d2d5b2665        www                 "supervisord -c /proj"   14 hours ago        Up 14 hours                             livetester
$ docker rm livetester
livetester
$ docker rm livetester
livetester
$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
9a1d2d5b2665        www                 "supervisord -c /proj"   14 hours ago        Up 14 hours                             livetester

Note that even though docker says it's removed, container still exists in ps.
The process doesn't exist.    The parent docker runs with --pid=host.
Not sure if it relates, but every time I see this in the docker daemon log.
time="2016-04-08T04:38:40.095336232Z" level=error msg="Handler for DELETE /v1.22/containers/manual returned error: No such container: manual"
time="2016-04-08T04:38:40.132337005Z" level=error msg="Handler for POST /v1.22/containers/livetester/kill returned error: Cannot kill container livetester: Container 93fdd7adcfa4c732e820b08b817ca40300b915ff1030402c480a6332c391cb4c is not running"
time="2016-04-08T04:38:41.722221664Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:38:41.900656823Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:38:58.684734947Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:38:58.741898731Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:39:00.014414531Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:39:00.175652093Z" level=error msg="Couldn't run auplink before unmount: exec: \"auplink\": executable file not found in $PATH"
time="2016-04-08T04:39:00.244468344Z" level=error msg="attach: stdout: write unix /sock/docker.sock->@: write: broken pipe"

The docker-in-docker container image doesn't have auplink apparently, but I'm not sure why this happens only after particular point.
docker start, docker stop doesn't help.  docker attach hangs.
I don't have clear repro.  It happens in different container images.
Any idea?

OS is Ubuntu 14:04 but kernel is 3.19-0.51 or 3.19-0-56 (happens in both)
$ uname -a
Linux slk80-5 3.19.0-56-generic #62~14.04.1-Ubuntu SMP Fri Mar 11 11:03:15 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

And once it happens, we cannot even remove the docker-in-docker daemon, and the same symptom happens for the daemon container, resulting in the parent docker cannot be restarted.  The only solution we have right now is to reboot the host machine.

We are seeing this issue more frequently when the host memory usage is high, if it helps understand it.

Hit another one, attaching the daemon log.
{"log":"time=\"2016-04-09T01:46:26.023389092Z\" level=info msg=\"Graph migration to content-addressability took 0.00 seconds\" \n","stream":"stderr","time":"2016-04-09T01:46:26.023639887Z"}
{"log":"time=\"2016-04-09T01:46:26.057027252Z\" level=info msg=\"Default bridge (docker0) is assigned with an IP address <IP_ADDRESS>/16. Daemon option --bip can be used to set a preferred IP address\" \n","stream":"stderr","time
":"2016-04-09T01:46:26.057189493Z"}
{"log":"time=\"2016-04-09T01:46:26.102223131Z\" level=warning msg=\"Your kernel does not support swap memory limit.\" \n","stream":"stderr","time":"2016-04-09T01:46:26.102392107Z"}
{"log":"time=\"2016-04-09T01:46:26.103204255Z\" level=info msg=\"Loading containers: start.\" \n","stream":"stderr","time":"2016-04-09T01:46:26.103336207Z"}
{"log":"...\n","stream":"stdout","time":"2016-04-09T01:46:26.105039621Z"}
{"log":"time=\"2016-04-09T01:46:26.104917703Z\" level=info msg=\"Loading containers: done.\" \n","stream":"stderr","time":"2016-04-09T01:46:26.105115458Z"}
{"log":"time=\"2016-04-09T01:46:26.104934380Z\" level=info msg=\"Daemon has completed initialization\" \n","stream":"stderr","time":"2016-04-09T01:46:26.10513216Z"}
{"log":"time=\"2016-04-09T01:46:26.104946768Z\" level=info msg=\"Docker daemon\" commit=590d5108 execdriver=native-0.2 graphdriver=aufs version=1.10.0 \n","stream":"stderr","time":"2016-04-09T01:46:26.10513851Z"}
{"log":"time=\"2016-04-09T01:46:26.112182031Z\" level=info msg=\"API listen on /sock/docker.sock\" \n","stream":"stderr","time":"2016-04-09T01:46:26.112411309Z"}
{"log":"time=\"2016-04-09T08:16:51.484042798Z\" level=error msg=\"Handler for POST /v1.22/containers/create returned error: Conflict. The name \\\"/net\\\" is already in use by container 4a0d827f04b2e96702d0b1f8bc73b81034d265bb
49b18b24bd7ee1f1a175b633. You have to remove (or rename) that container to be able to reuse that name.\" \n","stream":"stderr","time":"2016-04-09T08:16:51.484900408Z"}
{"log":"time=\"2016-04-09T11:58:00.040918758Z\" level=info msg=\"Container 4da606d95aec failed to exit within 10 seconds of kill - trying direct SIGKILL\" \n","stream":"stderr","time":"2016-04-09T11:58:00.041204569Z"}
{"log":"time=\"2016-04-09T11:58:48.746830614Z\" level=error msg=\"Handler for DELETE /v1.22/containers/www-test returned error: No such container: www-test\" \n","stream":"stderr","time":"2016-04-09T11:58:48.747220382Z"}
{"log":"time=\"2016-04-09T11:58:48.803305022Z\" level=error msg=\"Handler for DELETE /v1.22/containers/workers-test returned error: No such container: workers-test\" \n","stream":"stderr","time":"2016-04-09T11:58:48.80355955Z"}
{"log":"time=\"2016-04-09T11:58:48.851329266Z\" level=error msg=\"Handler for DELETE /v1.22/containers/ws returned error: No such container: ws\" \n","stream":"stderr","time":"2016-04-09T11:58:48.851543142Z"}
{"log":"time=\"2016-04-09T11:58:48.894545347Z\" level=error msg=\"Handler for DELETE /v1.22/containers/www returned error: No such container: www\" \n","stream":"stderr","time":"2016-04-09T11:58:48.894796015Z"}
{"log":"time=\"2016-04-09T11:58:49.188633545Z\" level=error msg=\"Handler for DELETE /v1.22/containers/workers returned error: No such container: workers\" \n","stream":"stderr","time":"2016-04-09T11:58:49.188859114Z"}
{"log":"time=\"2016-04-09T11:58:49.234957327Z\" level=error msg=\"Handler for DELETE /v1.22/containers/manual returned error: No such container: manual\" \n","stream":"stderr","time":"2016-04-09T11:58:49.23510324Z"}
{"log":"time=\"2016-04-09T11:58:49.272026206Z\" level=error msg=\"Handler for DELETE /v1.22/containers/postgresql returned error: No such container: postgresql\" \n","stream":"stderr","time":"2016-04-09T11:58:49.272254032Z"}
{"log":"time=\"2016-04-09T11:58:49.308139507Z\" level=error msg=\"Handler for DELETE /v1.22/containers/redis returned error: No such container: redis\" \n","stream":"stderr","time":"2016-04-09T11:58:49.308369249Z"}
{"log":"time=\"2016-04-09T11:58:49.368793407Z\" level=error msg=\"Handler for DELETE /v1.22/containers/etcd returned error: No such container: etcd\" \n","stream":"stderr","time":"2016-04-09T11:58:49.369181025Z"}
{"log":"time=\"2016-04-09T11:58:49.755338992Z\" level=error msg=\"Handler for DELETE /v1.22/containers/papertrail returned error: No such container: papertrail\" \n","stream":"stderr","time":"2016-04-09T11:58:49.755502841Z"}
{"log":"time=\"2016-04-09T11:59:03.975659152Z\" level=warning msg=\"failed to cleanup ipc mounts:\\nfailed to umount /var/lib/docker/containers/cec8f9f1ce3d5a1eff1cff86d4a2bc2db596b2fb4ebfaa20c60b404ff1ac5c2d/shm: no such file
or directory\\nfailed to umount /var/lib/docker/containers/cec8f9f1ce3d5a1eff1cff86d4a2bc2db596b2fb4ebfaa20c60b404ff1ac5c2d/mqueue: no such file or directory\" \n","stream":"stderr","time":"2016-04-09T11:59:03.975857944Z"}
{"log":"time=\"2016-04-09T11:59:04.015879115Z\" level=error msg=\"Handler for POST /v1.22/containers/cec8f9f1ce3d5a1eff1cff86d4a2bc2db596b2fb4ebfaa20c60b404ff1ac5c2d/start returned error: No such container: net\" \n","stream":"
stderr","time":"2016-04-09T11:59:04.016113953Z”}

And this time, after trying to stop the inner daemon by docker kill, the inner daemon process is gone, but the outer daemon now hangs to inspect (log, inspect, ps etc) this daemon container.  Everything else works fine.

Are you also running into this issue if you use a volume for /var/lib/docker, i.e. -v /var/lib/docker or -v somevolume:/var/lib/docker ?
Running layered filesystems on top of layered filesystems (in this case, both aufs inside and outside the container, is known to be problematic. I don't know if it's related, but good practice in general (and will give better performance)

From the beginning it is on volume.  /var/lib/docker is on the host physical disk (yes it's bare metals) and never on layered filesystems.  In fact, I don't believe much in layered filesystems and most of the application heavy load is read/written on volumes.  Only dependencies installed in Dockerfile are on aufs.  Nevertheless, /tmp etc. may be on aufs as well.

@umitanuki but the "inner" docker (docker in docker) inside the container is running on aufs (because it uses the container's filesystem), and looking at the inspect output of your container, I don't see /var/lib/docker being defined as a volume

So any container that's started by the dind daemon, is running on a layered filesystem (aufs), including their volumes, because /var/lib/docker/volumes inside the docker in docker container is also on aufs

The inspect above is from the container in the inner daemon.  The outer mounts something like /var/multi/box-0/lib/docker for the inner's /var/lib/docker.  Yes, actual containers that run in dind have aufs space but the actual aufs is persistent on the host, because inner's /var/lib/docker is volume mounted from the host var/multi/box-0/lib/docker

So aufs+did is suspicious to you?  Do you have any other recommendation of storage driver combination?

as long as the /var/lib/docker is in a volume, so not using the container's filesystem, it should be ok; basically any of the graph drivers (aufs, devicemapper, overlay, btrfs, zfs) running in the containers filesystem (so on top of a layered filesystem) is known to cause issues, but as long as it's in a volume, it can work. devicemapper is tricky, because running devicemapper inside a container won't have Udev sync support, which results in data loss / corruption

Probably an oversight in your copy/paste but...
How are you running docker rm against a running container?
You should need to do docker rm -f.

Of course the first time we do docker rm -f then process is gone but the container remains unremovable.  Then after that docker rm succeeds but the container isn't removed. While process is alive docker rm fails.

So we have been sound for the last few days, because we stopped using docker-in-docker and run multiple daemons on host.  Seems like something is broken in dind even if the aufs is on volume.


Man/mix length Call options not working

Model: llama3
LangchaingoVersion: v0.1.10
I was trying to use the llms.WithMaxLength and llms.WithMinLength  to set some output limits, but seems like the model doesn't respect these options.
callOptions = append(callOptions, llms.WithMaxLength(50), llms.WithMinLength(10))

then I run the model as the following:
contentResponse, err = o.Llm.GenerateContent(ctx, content, callOptions...)
..
	for _, choice := range contentResponse.Choices {
		output += choice.Content
		errors += choice.StopReason
	}
..

But I have responses with lengths higher than the one that I set, I don't know if this is a bug or if I am using the wrong option.
Also noticed that if I use WithMaxTokens(2) it works, but it feels like the model is just cutting off its response since I asked

prompt: "Man is naturally evil or is corrupted by society?"

And the model gave me:

output: "A Classic"

but the problem is, if I increase the MaxTokens value, I get:

output: "A classic debate!\n\nThe idea that man is corrupted by society, also known as the "social corruption" or "societal influence" theory, suggests that human nature is inherently good and that societal factors, such as culture, norms, and institutions"

Model: llama3 LangchaingoVersion: v0.1.10
I was trying to use the llms.WithMaxLength and llms.WithMinLength to set some output limits, but seems like the model doesn't respect these options.
callOptions = append(callOptions, llms.WithMaxLength(50), llms.WithMinLength(10))

then I run the model as the following:
contentResponse, err = o.Llm.GenerateContent(ctx, content, callOptions...)
..
	for _, choice := range contentResponse.Choices {
		output += choice.Content
		errors += choice.StopReason
	}
..

But I have responses with lengths higher than the one that I set, I don't know if this is a bug or if I am using the wrong option.
Also noticed that if I use WithMaxTokens(2) it works, but it feels like the model is just cutting off its response since I asked

prompt: "Man is naturally evil or is corrupted by society?"

And the model gave me:

output: "A Classic"

but the problem is, if I increase the MaxTokens value, I get:

output: "A classic debate!\n\nThe idea that man is corrupted by society, also known as the "social corruption" or "societal influence" theory, suggests that human nature is inherently good and that societal factors, such as culture, norms, and institutions"

openai, work only WithMaxTokens, not have support for WithMaxLength

Model: llama3 LangchaingoVersion: v0.1.10
I was trying to use the llms.WithMaxLength and llms.WithMinLength to set some output limits, but seems like the model doesn't respect these options.
callOptions = append(callOptions, llms.WithMaxLength(50), llms.WithMinLength(10))

then I run the model as the following:
contentResponse, err = o.Llm.GenerateContent(ctx, content, callOptions...)
..
	for _, choice := range contentResponse.Choices {
		output += choice.Content
		errors += choice.StopReason
	}
..

But I have responses with lengths higher than the one that I set, I don't know if this is a bug or if I am using the wrong option.
Also noticed that if I use WithMaxTokens(2) it works, but it feels like the model is just cutting off its response since I asked

prompt: "Man is naturally evil or is corrupted by society?"

And the model gave me:

output: "A Classic"

but the problem is, if I increase the MaxTokens value, I get:

output: "A classic debate!\n\nThe idea that man is corrupted by society, also known as the "social corruption" or "societal influence" theory, suggests that human nature is inherently good and that societal factors, such as culture, norms, and institutions"

ollama haven't supporte to WithMaxLength, only WithMaxTokens

Thanks @devalexandre . is good to know


KubeCon NA 2024 Planning

This issue is to track plans for Kubecon Salt Lake in November 2024. Let us know what you think we should do and what you can help with!
Things we've done the past few Kubecons and which we'd like to continue:

Booth in project pavilion for meetups
Lightning talk sessions on our governed projects and new ideas
Project meeting on project meeting day
Conference sessions about the TAG and WGs
Announcements of new papers and initiatives

### Tasks
- [ ] Request Project Opportunities (Booth, Lightning Talk)
- [x] Request Conference Session for TAG

I have requested space for the morning platform WG coffees that were popular in the last two KubeCons.
I am working with Eric Lopez to try and find space after running into no availability at local hotels in part because the CNCF has pre reserved it.
No help needed right now from the tag leadership unless someone has insider knowledge!

Announcements of new papers and initiatives

How about announcements for our papers translated into various languages? As for Japanese, it should be completed by KubeCon NA.

@abangser @lianmakesthings how can  @danieloh30 and myself get involved in this organization? We want to have some participation on this with the new working group

I am really just trying to sort out these coffees. Happy to engage in more, but not tuned in yet!

@salaboy Re: conference session for TAGs/WGs, this usually is a separate process from the main CFP for the "maintainer track" that opens a bit closer to the event that we can keep an eye out for.
Also, once we get closer, I can help coordinate the booth schedule/volunteering this year.

@salaboy for maintainer track we have batted around the idea of a panel talking about app delivery with representation from each of the WGs. Given the split from singular platform to now app, platform and infra plus the artefacts I thought it might be a great opportunity to clarity the TAG through its parts.
No decision yet on this, but worth surfacing in case we have better options to propose!

Happy to help again with planning and booth duty and whatnot

@salaboy for maintainer track we have batted around the idea of a panel talking about app delivery with representation from each of the WGs. Given the split from singular platform to now app, platform and infra plus the artefacts I thought it might be a great opportunity to clarity the TAG through its parts.
No decision yet on this, but worth surfacing in case we have better options to propose!

I'll have a draft of the proposal for the panel discussion ready soon. I'll coordinate with @schristoff on this.

Something I've mentioned and should really write down here is getting some platform representation in the unconference track. We could do general platform to complement the coffees but I also thought it would be interesting to have a more directed session on the topic of platform users and what they face. We need a lot more input on that and it could benefit multiple working groups.

As for the booth, I think the TAG is a useful administrative container for the working groups, but it isn't all that useful in getting the word out or marketing things in a conference. I'd like to see more direct banners for platform, for instance since it is such a big topic at kubecon but people aren't really aware that there is a booth to come and talk about it.

Lastly, how do we get some  time for platforms at the booth pavilion? We could do a session of lightning talks for an audience. There are plenty of panel discussions we could do.

We could do something on OpenGitOps, a report on a successful working group (GitOps WG -> OpenGitOps) if there's space for that?

If the Infrastructure Lifecycle working group gets accepted, as presented in this draft, it would be great to have the opportunity to introduce ourselves in a 10-15 minute slot 😺

Lastly, how do we get some time for platforms at the booth pavilion? We could do a session of lightning talks for an audience. There are plenty of panel discussions we could do.

Based on the previous KubeCons, we can request for a time slot for the booth. During that we can do lightning talks. We can open up CFPs for the same, maybe after the official talk notifications are sent out. So giving platform folks another chance to share their insights with the WG members.

Lastly, how do we get some time for platforms at the booth pavilion? We could do a session of lightning talks for an audience. There are plenty of panel discussions we could do.

Based on the previous KubeCons, we can request for a time slot for the booth. During that we can do lightning talks. We can open up CFPs for the same, maybe after the official talk notifications are sent out. So giving platform folks another chance to share their insights with the WG members.

I have requested a booth for KubeCon, but it was very late in the process due to a misunderstanding on my part. I will follow this up this week.
If we do have a booth (hopefully), we will most likely set of some time to do lightning talks during the conference.

Lastly, how do we get some time for platforms at the booth pavilion? We could do a session of lightning talks for an audience. There are plenty of panel discussions we could do.

Based on the previous KubeCons, we can request for a time slot for the booth. During that we can do lightning talks. We can open up CFPs for the same, maybe after the official talk notifications are sent out. So giving platform folks another chance to share their insights with the WG members.

I have requested a booth for KubeCon, but it was very late in the process due to a misunderstanding on my part. I will follow this up this week.
If we do have a booth (hopefully), we will most likely set of some time to do lightning talks during the conference.

I might not have been clear. I spent a lot of time at the booth for lightning talks and the audience for the speakers was very small. At most there were 2-3 non-wg people.
What I was asking is if we can get a timeslot on the project pavilion main stage, which appeared to draw quite a crowd.

Just confirming, coffees will be hosted at https://cuplacoffee.com/locations/salt-lake-city-coffee-shop/. There is no indication of discounts or freebees yet, but they are a big shop and open at 7am (about when we plan to start) so they have said there is no issue finding space there.

It was suggested to get tables set aside for TAG/WG interest groups: https://cloud-native.slack.com/archives/C020RHD43BP/p1722083865936399?thread_ts=1720633463.044499&cid=C020RHD43BP

I am not sure I saw these last time, so I am just the messenger for an idea from the group.

I'm interested in giving a lightening talk or be part of a panel discussion. How do I get started on that? Is there a CFP process?

Hi @ffforest we're still discussing what we plan to do at the booth. We did lightenung talks at the booth in Chicago in 2023, and that had a CFP process.
I'd suggest joining our Slack channel and our upcoming community meeting where this would be an agenda item.

Hi @lianmakesthings @roberthstrand @abangser @krumware I've created this document with a list of activities that we can do for WG-Platforms at the booth. (we can tweak some of them to fit the larger TAG as well)  I'm happy to discuss this in our next WG call. Depending on the duration and days for which we get the booth, we can plan the activities. Happy to take the lead on some of these and plan.


improvement (version number) (nose deprecate warning)

During packaging we can saw those warning
Version number ( if dev will be still used) better to release a 2.0.dev than 2.0dev
package manager will be better resolve an update when 2.0 will be out.
[   23s] /usr/lib/python3.3/site-packages/setuptools/dist.py:285: UserWarning: Normalizing '2.0dev4' to '2.0.dev4'
[   23s]   normalized_version,

Nose call deprecated
[   23s] /usr/lib/python3.3/site-packages/nose/config.py:435: DeprecationWarning: Use of multiple -w arguments is deprecated and support may be removed in a future release. You can get the same behavior by passing directories without the -w argument on the command line, or by using the --tests argument in a configuration file.
[   23s]   DeprecationWarning)

this is not urgent, just a notice to not forget.

Deprecate warning of nose for python 3.6
/usr/lib/python3.6/site-packages/nose/config.py:435: DeprecationWarning: Use of multiple -w arguments is deprecated and support may be removed in a future release. You can get the same behavior by passing directories without the -w argument on the command line, or by using the --tests argument in a configuration file.

no changes. no care.


PHP rename variable does not work

Check for existing issues

[X] Completed

Describe the bug / provide steps to reproduce it
When you try to rename a variable name using one of the following methods below, and confirm the rename, the variables don't get replaced.
Using shortcut

click on variable
press FN + F2 (maybe VS Code shortcut)
rename variable name
press enter to confirm rename

Using the command pallet

execute command: editor: rename
rename variable
execute command: editor: confirm rename

Environment
Zed: v0.96.2 (preview)
OS: macOS 14.0.0
Memory: 16 GiB
Architecture: aarch64
If applicable, add mockups / screenshots to help explain present your vision of the feature
https://github.com/zed-industries/community/assets/62463826/5d52ac9f-33d8-4703-9cd4-1ae365e29cf8
If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.
If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.
No response

cc: @osiewicz

Unfortunately symbol renaming is a paid feature of the language server we are using for PHP at the moment. We could expose the ability to authenticate a purchase with the server to use the paid features or just move to a different language server, though I don't know what options we have to choose from.

Unfortunately symbol renaming is a paid feature of the language server we are using for PHP at the moment. We could expose the ability to authenticate a purchase with the server to use the paid features or just move to a different language server, though I don't know what options we have to choose from.

I have a premium license for the lsp, so I thought I place my license key inside $home/user/intelephense/license.txt and the premium options should work. But if I understand correctly, when you guys have implemented the authentication part this should work!?

I hadn't looked to closely at how Intelephense handles activation until now; that looks like it should probably work but I'm guessing from what you said that it doesn't? I'm not sure what could be wrong but we need to look into it

I hadn't looked to closely at how Intelephense handles activation until now; that looks like it should probably work but I'm guessing from what you said that it doesn't? I'm not sure what could be wrong but we need to look into it

Yes, for me it's not working.
I created a file $home/user/intelephense/license.txt with the license key that I received in my email. The key needs to be activated, so I did this using Visual Studio Code, so it's activated. Then I restarted Zed preview + SLP but, the premium options are still not working.

@ForLoveOfCats Have you tried this language server instead? It seems like a better option and has many more features
https://github.com/phpactor/phpactor

@osbre The only downside is that the requirement is PHP ^8.0. If you had a project that uses a PHP version below that, it would be annoying to having to switch to a higher PHP version for local development.
 Because it usually uses the current PHP version.

@RemcoSmitsDev I think there is a way to run multiple PHP versions at the same time (e.g refer to a php 8 binary from a different location)

Has this been figured out?
I tried placing a license.txt into my $HOME/intelephense/license.txt and also adding:
"intelephense": {
            "initialization_options": {
                //"format_on_save": "off"
                "licenseKey": "00SJ3LHQFTIQNYG"
            }
        }

But doesn't seem to work.

@ForLoveOfCats Have you tried this language server instead? It seems like a better option and has many more features https://github.com/phpactor/phpactor

How would I add PHPactor in my Zed config?

Has this been figured out?
I tried placing a license.txt into my $HOME/intelephense/license.txt and also adding:

"intelephense": {

            "initialization_options": {

                //"format_on_save": "off"

                "licenseKey": "******"

            }

        }

But doesn't seem to work.

@ForLoveOfCats Have you tried this language server instead? It seems like a better option and has many more features https://github.com/phpactor/phpactor

How would I tell Zed to use PHPactor instead of intelephense in my config?

Try renaming the license.txt to licence.txt and restart you lsp. It worked for me i can rename now.

But the other premium features don't work