No instructions on how to apply ck_exclude_from_pci tag

There are no instructions on how to do the following:
For expected super identities, such as infrastructure admins, use the ck_exclude_from_pci and ck_exclude_from_reports tags.
ck_exclude_from_pci tag removes the identity from the authorization system’s PCI score calculation
ck_exclude_from_reports tag removes the identity from the Permissions Analytics Report, so it isn't called out as a super identity
How do we apply these tags? I can't find documentation on applying tags to users.

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

ID: cadc829a-df6d-72e8-94b8-bd9f2af9f679
Version Independent ID: cadc829a-df6d-72e8-94b8-bd9f2af9f679
Content: Phase 2 Right-size permissions and automate the principle of least privilege by using Microsoft Entra Permissions Management - Microsoft Entra
Content Source: docs/architecture/permissions-manage-ops-guide-two.md
Service: entra
GitHub Login: @jricketts
Microsoft Alias: jricketts

@festivus
Thanks for your feedback! We will investigate and update as appropriate.

@festivus
I'm going to assign this to the document author so they can take a look at it accordingly.
@janicericketts
Can you please check and add your comments on this doc update request as applicable.

@janicericketts Please migrate this feedback to ADO for tracking ASAP. We're changing feedback mechanism from GH issues to UUF and ADO tracking.
CC @martincoetzer

Thank you for your feedback. We will consider your request in a future update of the article. #please-close


[WIP] Github Actions add MacOS build

This is working, but it's quite slow. I'll now try to adding caching (both dependencies and build ccache).


Allow basic bi-directional windowed pagination according to Relay spec

The hasPreviousPage provided by PageInfo on connection queries seems to be false in circumstances where i would expect them to be true - which means that basic bi-directional windowed pagination can not be performed satisfyingly at the moment.
A simple example where you have a list of 5 posts (ids "1"-"5") in the database and query postsConnection, paginating forward using a first limit and an after cursor:

first
after
startCursor
endCursor
hasNextPage
hasPreviousPage

2

"1"
"2"
true
false

2
"2"
"3"
"4"
true
false

2
"4"
"5"

false
false

We might only want to show 2 items at a time with forward & back buttons. The hasNextPage tells us reliably if we can expect another page or should disable the forward button. The hasPreviousPage doesn't do so. While we can still try to fetch the results from the previous page on click of the back button by querying with a before with the value of the startCursor, we don't know beforehand if we will get any results or simply turn up empty.
What is expected is instead this:

first
after
startCursor
endCursor
hasNextPage
hasPreviousPage

2

"1"
"2"
true
false

2
"2"
"3"
"4"
true
true

2
"4"
"5"

false
true

The same problem occurs when paginating backwards using last and before instead of first and after - hasPreviousPage is correctly set but hasNextPage is always false.
The relay spec states:

hasPreviousPage is used to indicate whether more edges exist prior to the set defined by the clients arguments. If the client is paginating with last/before, then the server must return true if prior edges exist, otherwise false. If the client is paginating with first/after, then the client may return true if edges prior to after exist, if it can do so efficiently, otherwise may return false.

hasNextPage is used to indicate whether more edges exist following the set defined by the clients arguments. If the client is paginating with first/after, then the server must return true if further edges exist, otherwise false. If the client is paginating with last/before, then the client may return true if edges further from before exist, if it can do so efficiently, otherwise may return false.

Therefore i propose that you handle this by returning true if edges prior or after exist regardless of pagination direction. That would be extremely helpful!

Any word on if there are actually plans to implement this? I know it was requested to be listed as a "feature" but it feels a lot more like a bug when you consider how the connections spec is expected to work. I'm unable to ever get hasPreviousPage to come back as true, which begs the question of why it's even there to begin with?

I fully agree with @kgoggin that this feels much more like a bug. If you want so, a bug in the relay specs, because

If the client is paginating with first/after, then the client may return true if edges prior to after exist, if it can do so efficiently, otherwise may return false.

is not so usefull. I think it should return true if it can so efficiently, but rather null if it can't, otherwise you actually get wrong information.
From any programmer's practical point of view, this is a bug.

Haven't gotten hasPreviousPage to work properly, but I was having problems getting hasNextPage to work until I figured out the right combination of prisma-client calls in my resolver, here is what worked for me in case it helps anyone:
Hint: I'm ONLY passing the where arg to the aggregate call, but all args to pageInfo, that way aggregate.count will return the total of filtered items but ignore the pagination.
...
imagesConnection: async (parent, args, ctx) => {
    const edges = await ctx.db.imagesConnection(args).edges();
    const aggregate = await ctx.db
      .imagesConnection({ where: args.where })
      .aggregate();
    const pageInfo = await ctx.db.imagesConnection(args).pageInfo();
    return { edges, aggregate, pageInfo };
  },
...

I totally agree with @DominikMueller64. Common sense says that this is a bug.

It was like this in GraphQL Ruby for a while too. Because it results in extra SQL queries and many pagination scenarios don’t require it they made it optional rmosolgo/graphql-ruby#960.

I'm not really adding anything to the discussion but the thread seems to have gone stale and it needs a bump. I just wanted to say I was about to report a bug but then "similar topics" suggestion pointed me here.


DDoS problem

Each time I make a lobby im getting DDoS'd atacked when I use the mod
It's annoying to have to reset my Ip each time and I fear my info getting stolen
I dont know if it's a vulnerability created by the mod or is it just a vanilla issue but had really bad timing

Lobby Control does not have it's own Networking nor goes to a separate Server List.
all this mod does is keep the Steam Lobby alive so people can join after the first landing.
if you are suffering from frequent DDOS attacks you might have to go the your local authorities.


Unexpected task runtime error when running tasks

Issue Type: Bug
Since the introduction of PR https://github.com/Microsoft/vscode/pull/66819, anytime I try to run any task in my workspace it fails with Unexpected task runtime. I've tracked it down to having a task defined that uses the dependsOn property -- even when that isn't the task being run. Just the existence of a task with dependsOn in the tasks.json will cause all tasks to fail.
Here is the code that throws the error:
https://github.com/Microsoft/vscode/pull/66819/files/8f21e46353a558c141367e4ddd92c8c8e688ad20#diff-24a99c59e6990af6624d30ba8e8e438eR610
/cc @Tyriar @alexr00
VS Code version: Code - Insiders 1.33.0-insider (7258b995f63827ff1b179f47722e500296d64c35, 2019-03-14T06:19:44.881Z)
OS version: Windows_NT x64 10.0.18356

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz (8 x 4008)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: enabledsurface_synchronization: enabled_onvideo_decode: enabledwebgl: enabledwebgl2: enabled

Memory (System)
31.93GB (16.52GB free)

Process Argv

Screen Reader
no

VM
0%

@eamodio, do you have any additional repro steps? I cannot reproduce the error with this tasks.json:
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "task 1",
            "type": "shell",
            "command": "echo 1",
            "problemMatcher": [],
            "dependsOn": "task 2"
        },
        {
            "label": "task 2",
            "type": "shell",
            "command": "echo 2",
            "problemMatcher": []
        }
    ]
}

@alexr00 I'm trying to reproduce this in a sample I can easily share, but now also I'm running into a related issue.
In GitLens I have the following tasks:
https://github.com/eamodio/vscode-gitlens/blob/b0941c2acc4a2c0980e58541c6dfc234cfd5235e/.vscode/tasks.json#L18-L40
    "tasks": [
        {
            "type": "npm",
            "script": "build",
            "group": "build",
            "problemMatcher": ["$ts-webpack", "$tslint-webpack"]
        },
        {
            "type": "npm",
            "script": "lint",
            "group": "build",
            "problemMatcher": ["$tslint5"]
        },
        {
            "type": "npm",
            "script": "watch",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "isBackground": true,
            "problemMatcher": ["$ts-webpack-watch", "$tslint-webpack-watch"]
        }
    ]

But anytime I try to start either the build or the lint task I get:
Failed to create terminal for task npm: lint
ERR Cannot read property 'group' of undefined: TypeError: Cannot read property 'group' of undefined
    at x.createTerminal (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3081:26)
    at e.configurationProperties.isBackground.Promise (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3074:495)
    at new Promise (<anonymous>)
    at x.executeInTerminal (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3074:459)
    at resolveVariablesFromSet.then.i (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3071:6)
    at process._tickCallback (internal/process/next_tick.js:68:7)
log.ts:173   ERR Failed to create terminal for task npm: lint: Error: Failed to create terminal for task npm: lint
    at x.executeInTerminal (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3076:877)
    at resolveVariablesFromSet.then.i (file:///C:/Users/Eric/AppData/Local/Programs/Microsoft VS Code Insiders/resources/app/out/vs/workbench/workbench.main.js:3071:6)
    at process._tickCallback (internal/process/next_tick.js:68:7)

The error is coming from the line below, because this.terminals[idleTerminalId] is undefined
https://github.com/Microsoft/vscode/blob/63642b538a699478baca9e389908b9ba5be0bb3e/src/vs/workbench/contrib/tasks/electron-browser/terminalTaskSystem.ts#L928

@alexr00 I also figured out the cause of the Unexpected task runtime error issue. I was wrong, it wasn't just related to dependsOn it only seems to happen, when you have no command/script/etc (only a dependsOn) and also have a presentation.group, see below.
        {
            "type": "npm",
            "script": "watch",
            "group": "build",
            "isBackground": true,
            "problemMatcher": [],
            "presentation": {
                "group": "vscode"
            }
        },
        {
            "label": "watch",
            "dependsOn": ["npm: watch"],
            "group": "build",
            "isBackground": true,
            "problemMatcher": [],
            "presentation": {
                "group": "vscode"
            }
        }

If you try to run the watch task it will fail with Unexpected task runtime error

I just got that too, and then it stopped happening (without me doing anything other than looking away from it for a few minutes). I'll make a fix for that one.
re the original issue: Thanks for the new tasks, I'll try again.

Yeah, my vscode just updated and the issue went away too.

Reproduced and fixed. Thanks for reporting it!


Op555 invalid home url generation

Fixes wrong redirection when:

Using domainless urls
Accessing by IP address
Not logged in

In these circumstances, a URL of the form http://cartodb.lan/user//login was generated, with a blank username in the URL, which gives a 404 (no user found). This was fixed for domains in #6715 but not for the IP route.

CR @juanignaciosl

LGTM, but please test this in different scenarios (subdomainless in local and normal at staging, mainly).
Nice test addition btw :-)


Blank node name error message

Description
If the user leaves the node_name blank in the node scenario config file an error message is printed out saying it couldn't find the node. But in our default node scenario we are matching based on the label selector so this message can be confusing.
This update should only print off the error message if a node name is given and does not match and ready node names

Can one of the admins verify this patch?


Service roads draw to thick early

13/37.7792/-122.4013

Fixed via https://github.com/tangrams/eraser-map/commit/bc6ed55ca32102ea2a57f431aae1ec36ba7da712.


refactor: removed pre-MN_RR logic of validation of CL

Issue being fixed or feature implemented
The fork MN_RR is active awhile on testnet and mainnet and no more need legacy check
What was done?
Removes legacy version of checks for CL and related functional tests
How Has This Been Tested?
Run unit / functional test  <------------- CI is running
Reindex testnet <------------- In progress
Reindex mainnet <--------- TODO
Breaking Changes
Removed pre-mn_rr version of checks for CL.
It's no more relevant on mainnet and testnet.
It affects behavior on new devnets and regtest for pre-mn_rr activation blocks.
Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added or updated relevant unit/integration/functional/e2e tests
[x] I have made corresponding changes to the documentation
[x] I have assigned this pull request to a milestone

I ran feature_llmq_chainlocks.py ~30 times without issue (with tsan / debug) locally


Derive Debug for all structs

Let all structs derive debug for ease of debugging.
The only thing that I feel is a little questionable about this is making UsbInterfaceHandler and UsbDeviceHandler into a supertraits of Debug. Although not semantically correct, it is meant to force UsbDevice.device_handler: Option<Arc<Mutex<Box<dyn UsbDeviceHandler + Send>>>> to be debuggable, so UsbDevice can be so as well. Would it be better to maintain a manual implementation here?

I don't know what's the best practice, but it might break existing code not impl-ing Debug?

I don't think it is a big deal to derive the debug struct personally.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

3 of 11 (27.27%)  changed or added relevant lines in 6 files are covered.
6 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.3%) to 41.353%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/cdc.rs
0
1
0.0%

src/interface.rs
0
1
0.0%

src/lib.rs
0
1
0.0%

src/host.rs
0
2
0.0%

src/hid.rs
0
3
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/hid.rs
2
25.0%

src/host.rs
2
0.0%

src/lib.rs
2
52.71%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
550

Relevant Lines:
1330

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

3 of 11 (27.27%)  changed or added relevant lines in 6 files are covered.
6 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.3%) to 41.353%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/cdc.rs
0
1
0.0%

src/interface.rs
0
1
0.0%

src/lib.rs
0
1
0.0%

src/host.rs
0
2
0.0%

src/hid.rs
0
3
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/hid.rs
2
25.0%

src/host.rs
2
0.0%

src/lib.rs
2
52.71%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
550

Relevant Lines:
1330

💛  - Coveralls


Switch onDelete and onDone call

It feels to me that onDone() should be called at the end of log callback which means on more callback is going to be triggered, and onDelete should be called in onDesdroy when filter is deleted. This would make code fit better with the semantic.
@jplevyak @PiotrSikora Feel free to close this PR if the original way is preferred. Thanks!

So, onDone means that the operations has completed.  This is when the stream proper has closed and can no longer change state.  After that the onLog call is made which is used for logging the results of the completed operation.   Finally the onDelete calls is called.  This is when no further calls can come in.  It is the opportunity to free up any state (e.g. the Context).  I think it is better the way that it is, but that we clearly need some better documentation.    The onDelete can't be called in onDestroy because that is just for the HttpFilter, and we can still get onLog calls after that.

@jplevyak I see. I thought onDestroy happens after log inside envoy, which made the ordering a bit weird. Thanks for clarification!


(#398) Ensure Disqus works in dark mode

Description Of Changes
Due to the Bootstrap upgrade to 5.3, Disqus
comments were not readable in dark mode. This
issue was reported and confirmed at:
https://disqus.com/home/discussion/channel-discussdisqus/embed_disqus_comments_not_changing_background_color_with_bootstrap_53_color_mode/
A change has been made to override the
color-scheme at the :root, which appears not to
affect anything else in choco-theme currently.
In addition, the Disqus JavaScript has been moved
into it's own file so that the code can be shared
across repositories.
Motivation and Context
We need these comments to be readable.
Testing

Run the site and go to the Disqus comment section while in dark. mode
Everything should appear readable
Switch to light mode without reloading the page
Everything should appear readable

Operating Systems Testing
n/a
Change Types Made

[x] Bug fix (non-breaking change).
[ ] Feature / Enhancement (non-breaking change).
[ ] Breaking change (fix or feature that could cause existing functionality to change).
[ ] Documentation changes.
[ ] PowerShell code changes.

Change Checklist

[ ] Requires a change to the documentation.
[ ] Documentation has been updated.
[ ] Tests to cover my changes, have been added.
[ ] All new and existing tests passed?
[ ] PowerShell code changes: PowerShell v2 compatibility checked?

Related Issue
#398

@st3phhays and I have had a chat about this, and we are happy to proceed with the release.


There is an error message in the log

I don't know why, but it feels wrong. Because there is no this when using other webui.
Oh yes, the webui I added with docker

it seems to be on 1st run only. after I restart transmission, it doesn't show it.

it seems to be on 1st run only. after I restart transmission, it doesn't show it.

I haven't tried this, I only know that every time I open the webui, an error like this will be added to the log.  I'll try again later

you're right, it showed up again after I opened the webui

I am in the same situation. Whenever I try to access via the web, the error message jumps


Feature: allow nodejs API to specify read/write params

SDK
Node
Description
Currently the node API does not allow users to specify Lance-specific read/write params (e.g. rows per file, etc.)  For SDK parity we should add this in.

@westonpace could you provide a bit more context on this one? perhaps a python equivalent of the functionality that's missing from JS?


Provider is undefined when using restrictToRoles

@eikaramba commented on Tue Jun 13 2017
This might be related to https://github.com/feathersjs/feathers-authentication/issues/432, however i'm using feathers-rest.
Steps to reproduce
server is using these hooks for user model:
const auth = require('feathers-authentication').hooks;
const { restrictToOwner,restrictToRoles } = require('feathers-authentication-hooks');

    get: [
      auth.authenticate('jwt'),
      restrictToRoles({
         roles: ['admin'],
         fieldName: 'group',
         idField: 'id',
         ownerField: 'id',
         owner: true
      }),
      custom_method()
    ],

client is calling normally with:
this.api.service('users').get(payload.userId)
Expected behavior
hook.params.provider should be set to "rest" when checking inside of custom_method()
Actual behavior
provider is undefined. When i comment out the line for restrictToRoles, it works as expected.
System configuration (latest as of 13.06.2017)
feathers-2.1.2
feathers-rest-1.7.2
feathers-authentication-1.2.4
feathers-authentication-client-0.3.2
feathers-hooks-2.0.1
feathers-commons-0.8.7
feathers-hooks-common-3.5.1

@eikaramba commented on Tue Jun 13 2017
i just saw that i posted this to the wrong repo. i'm very sorry, it is sometimes really confusing with all these repositories. should i move it?

Of course this issue is because of https://github.com/feathersjs/feathers-authentication-hooks/blob/master/src/restrict-to-roles.js#L73
I kind of get the intention of that line, but it undermines the whole concept of providers. and unfortunaltey i really need to be able to check the provider environment.
Why? one use case is that i do a lot of additional stuff when getting a user. For example i make a lot of aggregations between tables to collect additional infos. Now i don't want to do this for EVERY get call, as every single request already is doing multiple internal GET calls to user because of authentication etc. Stateless REST for the win ;) So i only do those "heavy" operations when it was an external request, not for the internal ones.

You could add your own flag, something like hook.isInternal, to the hook.

actually..... yes, that is an idea. It just undermines the whole provider idea, doesn't it? I mean the documentation clearly states that one can use the provider variable for that context. In the meantime i will try this workaround :)

@daffl forget my previous statement. the solution you proposed does not work unfortunately. Why? Because provider is already undefined when the authentication hook is internally calling the service again. So provider is already undefined from the very beginning of the request.
For now i am switching the ordering when restrictToRoles is called. I try to put it at the very bottom to avoid not being able to distinguish the providers. however i have the feeling that i will experience situations where i cannot avoid it.


Initial work to add support for Cohere Provider

I tried to implement #610, and was able to get to the point of sending a chat completion.  However, Cohere's API is different enough from OpenAI that I can't use the OpenAI client.
To properly fix this, I think we need to extend Chat Providers with a way to override the client and API calls that get made with it.  This would allow us to use Anthropic directly too, and others that differ significantly.
Or we could switch to a wrapper client like https://sdk.vercel.ai/docs/introduction to help smooth out the differences.

I would rather do this through a fetch proxy or similar middleware.

Eg vercel sdk decided on some common format and then have translators to/from it https://github.com/vercel/ai/blob/main/packages/cohere/src/convert-to-cohere-chat-prompt.ts#L7
I think doing this to/from openai would be a more reasonable option.

excited to get cohere support, i love their web search tool


Inconsistent use of '...' in UI labels

Type: Bug
Two quick things I notied with how ... is used in ui labels:

In move to file, ... should not be used for the section label (Destination files ...)

In a few places in the UX, the ... is has a space before it: Label .... I believe the convention is to omit the space: Label...

Extension version: 2023.23.13391009
VS Code version: Code - Insiders 1.85.0-insider (Universal) (af28b32d7e553898b2a91af498b1fb666fdebe0c, 2023-12-06T11:18:22.866Z)
OS version: Darwin arm64 23.1.0
Modes:

System Info

Item
Value

CPUs
Apple M2 Max (12 x 24)

GPU Status
2d_canvas: unavailable_softwarecanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onopengl: disabled_offrasterization: disabled_softwareraw_draw: disabled_off_okvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_softwarewebgpu: unavailable_software

Load (avg)
3, 3, 3

Memory (System)
64.00GB (1.94GB free)

Process Argv
--crash-reporter-id 0fffb5da-9cd7-46fd-9e7f-a1564e8c5fda

Screen Reader
no

VM
0%

Also Destination files should be lowercase to match our other separator labels: https://github.com/microsoft/vscode/pull/200184

This issue has been fixed in prerelease version 2023.12.101, which we've just released. You can find the changelog here: CHANGELOG.md


sserver error

How to fix this? And where can i change or create a testpool username and pass?
Sserver.INFO file
Running on machine: testpool
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
StratumServerMain.cc:132] LTC sserver version 2.3.2-291-g2cb2649
StratumServerMain.cc:70] createServer type: LTC
StratumServer.cc:449] [Option] stale shares will be accepted.
Kafka.cc:368] producer librdkafka version: 0.9.1
Kafka.cc:368] producer librdkafka version: 0.9.1
Kafka.cc:368] producer librdkafka version: 0.9.1
Kafka.cc:81] consumer librdkafka version: 0.9.1
UserInfo.cc:45] UserInfo: user name will be case insensitive
StratumServer.cc:135] set max job lifetime to 300s
StratumServer.cc:140] set mining notify interval to 30s
Kafka.cc:163] add brokers: <IP_ADDRESS>:9092
Kafka.cc:170] create topic handle: LtcJob
UserInfo.cc:458] chain default update users count: 15
Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
Kafka.cc:449] create topic handle: ShareLog
StratumServer.cc:193] start job repository consume thread
Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
Kafka.cc:449] create topic handle: SolvedShare
Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
Kafka.cc:449] create topic handle: CommonEvents
Kafka.cc:368] producer librdkafka version: 0.9.1
Kafka.cc:368] producer librdkafka version: 0.9.1
Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
Kafka.cc:449] create topic handle: AuxPowSolvedShare
Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
Kafka.cc:449] create topic handle: RskSolvedShare
StratumServer.cc:789] stratum server running
StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000000"],["mining.notify","01000000"]],"01000000",8],"error":null}
StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000001"],["mining.notify","01000001"]],"01000001",8],"error":null}
StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000002"],["mining.notify","01000002"]],"01000002",8],"error":null}
StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000003"],["mining.notify","01000003"]],"01000003",8],"error":null}
StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000004"],["mining.notify","01000004"]],"01000004",8],"error":null}
StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
StratumSession.cc:345] cannot find user id
StratumSession.cc:315] cannot switch user chain
StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.273850 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.273957 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.273989 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.274001 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.274009 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.274034 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.274087 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.274124 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.274137 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.274145 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.274169 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.274193 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.274225 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.274237 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.274245 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.274269 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.274288 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.274313 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.274323 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.274333 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.274354 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.401396 13865 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0610 12:25:43.401618 13865 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0610 12:25:43.401795 13865 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0610 12:25:43.401979 13865 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0610 12:25:43.402170 13865 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0610 12:25:43.402240 13865 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0610 12:25:43.402293 13865 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000005"],["mining.notify","01000005"]],"01000005",8],"error":null}
I0610 12:25:43.402344 13865 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0610 12:25:43.402379 13865 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000006"],["mining.notify","01000006"]],"01000006",8],"error":null}
I0610 12:25:43.402487 13865 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0610 12:25:43.402521 13865 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000007"],["mining.notify","01000007"]],"01000007",8],"error":null}
I0610 12:25:43.402562 13865 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0610 12:25:43.402628 13865 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000008"],["mining.notify","01000008"]],"01000008",8],"error":null}
I0610 12:25:43.402679 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.402753 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.402766 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.402776 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.402812 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.402895 13865 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0610 12:25:43.402961 13865 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000009"],["mining.notify","01000009"]],"01000009",8],"error":null}
I0610 12:25:43.403059 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.403100 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.403111 13865 StratumSession.cc:315] cannot switch user chain
W0610 12:25:43.403120 13865 StratumSessionBitcoin.cc:463] authorize failed, workerName:testpool.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0610 12:25:43.403167 13865 StratumSession.cc:502] send(60) to testpool.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0610 12:25:43.403201 13865 StratumSession.cc:178] recv(62): {"id":1,"method":"mining.authorize","params":["testpool",""]}
I0610 12:25:43.403226 13865 StratumSession.cc:345] cannot find user id
I0610 12:25:43.403255 13865 StratumSession.cc:315] cannot switch user chain

You need a web api to provide user list for list_id_api_url in sserver.cfg.
You can use the following demo to build an api and add testpool to the user list (edit userlist.php):
https://github.com/btccom/btcpool/tree/master/install/api-sample

Now the sserver error is
I had GB run and i increase to 8GB but still the same
create topic handle: RskSolvedShare
I0613 17:27:57.904788  4138 StratumServer.cc:789] stratum server running
E0613 17:27:58.225713  4146 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0613 17:27:58.225903  4146 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0613 17:27:58.730346  4146 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0613 17:27:58.730391  4146 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0613 17:27:59.234839  4146 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0613 17:27:59.234897  4146 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0613 17:27:59.586982  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:27:59.587082  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:27:59.587225  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:27:59.587368  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:27:59.587502  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:27:59.587574  4138 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0613 17:27:59.587633  4138 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000000"],["mining.notify","01000000"]],"01000000",8],"error":null}
I0613 17:27:59.587680  4138 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0613 17:27:59.587711  4138 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000001"],["mining.notify","01000001"]],"01000001",8],"error":null}
I0613 17:27:59.587847  4138 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0613 17:27:59.587882  4138 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000002"],["mining.notify","01000002"]],"01000002",8],"error":null}
I0613 17:27:59.587899  4138 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0613 17:27:59.587927  4138 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000003"],["mining.notify","01000003"]],"01000003",8],"error":null}
I0613 17:27:59.587944  4138 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0613 17:27:59.588003  4138 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000004"],["mining.notify","01000004"]],"01000004",8],"error":null}
I0613 17:27:59.588027  4138 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0613 17:27:59.588059  4138 StratumSession.cc:345] cannot find user id
I0613 17:27:59.588069  4138 StratumSession.cc:315] cannot switch user chain
W0613 17:27:59.588076  4138 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0613 17:27:59.588100  4138 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0613 17:27:59.588184  4138 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0613 17:27:59.588212  4138 StratumSession.cc:345] cannot find user id
I0613 17:27:59.588222  4138 StratumSession.cc:315] cannot switch user chain
W0613 17:27:59.588228  4138 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0613 17:27:59.588248  4138 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0613 17:27:59.588285  4138 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0613 17:27:59.588311  4138 StratumSession.cc:345] cannot find user id
I0613 17:27:59.588320  4138 StratumSession.cc:315] cannot switch user chain
W0613 17:27:59.588326  4138 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0613 17:27:59.588346  4138 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0613 17:27:59.588361  4138 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0613 17:27:59.588382  4138 StratumSession.cc:345] cannot find user id
I0613 17:27:59.588390  4138 StratumSession.cc:315] cannot switch user chain
W0613 17:27:59.588397  4138 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0613 17:27:59.588415  4138 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0613 17:27:59.588429  4138 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0613 17:27:59.588451  4138 StratumSession.cc:345] cannot find user id
I0613 17:27:59.588459  4138 StratumSession.cc:315] cannot switch user chain
W0613 17:27:59.588465  4138 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0613 17:27:59.588485  4138 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
E0613 17:27:59.739332  4146 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0613 17:27:59.739420  4146 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0613 17:28:00.243870  4146 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0613 17:28:00.243965  4146 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0613 17:28:00.461432  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:28:00.461536  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:28:00.461647  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0613 17:28:00.461750  4138 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
On Thu, Jun 13, 2019 at 3:43 PM YihaoPeng<EMAIL_ADDRESS>wrote:

You need a web api to provide user list for list_id_api_url in sserver.cfg
.
You can use the following demo to build an api and add testpool to the
user list (edit userlist.php):
https://github.com/btccom/btcpool/tree/master/install/api-sample
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/btccom/btcpool/issues/311?email_source=notifications&email_token=AJHDH76UI4SHVDWO55CCUUDP2H3DNA5CNFSM4HWQLDH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXS2LCY#issuecomment-501589387,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJHDH74JPA5JSIZ6EWO4SGDP2H3DNANCNFSM4HWQLDHQ
.

 1,
    'yuri' => 2,
    'user3' => 3,
    'mmm' => 4,
    'user5' => 5,
    'ddd' => 6,
    'hu60' => 7,
	'taaa' => 31,
    'tbbb' => 32,
    'tuser3' => 33,
    'tmmm' => 34,
    'tuser5' => 35,
    'tddd' => 36,
    'thu60' => 37,
    'daad_ltc' => 41,
];

$requestedUsers = [];
foreach ($users as $name=>$id) {
    if ($id > $last_id) {
        $requestedUsers [$name] = $id;
    }
}

echo json_encode(
    [
        'err_no' => 0,
        'err_msg' => null,
        'data' => (object) $requestedUsers,
    ]
);

@yurisyb Oh, I noticed that error: Out of memory, it seems a bug in libcurl because of the inconsistent dependent library version..
Consider apt upgrade, then rebuild libcurl and rebuild btcpool.

Hi,
I have done through but still got the same error,
I have curl-7.65.1
Log file created at: 2019/06/14 17:29:51
Running on machine: testpool
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
I0614 17:29:51.254505 10448 StratumServerMain.cc:132] LTC sserver version
2.3.2-291-g2cb2649
I0614 17:29:51.254951 10448 StratumServerMain.cc:70] createServer type: LTC
I0614 17:29:51.255046 10448 StratumServer.cc:449] [Option] stale shares
will be accepted.
I0614 17:29:51.255100 10448 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 17:29:51.255175 10448 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 17:29:51.255189 10448 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 17:29:51.255203 10448 Kafka.cc:81] consumer librdkafka version: 0.9.1
I0614 17:29:51.255235 10448 UserInfo.cc:45] UserInfo: user name will be
case insensitive
I0614 17:29:51.256752 10448 StratumServer.cc:135] set max job lifetime to
300s
I0614 17:29:51.256770 10448 StratumServer.cc:140] set mining notify
interval to 30s
I0614 17:29:51.256876 10448 Kafka.cc:163] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.256937 10448 Kafka.cc:170] create topic handle: LtcJob
E0614 17:29:51.260491 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 17:29:51.260718 10455 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0614 17:29:51.287989 10461 StratumServer.cc:193] start job repository
consume thread
I0614 17:29:51.288100 10448 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.288156 10448 Kafka.cc:449] create topic handle: ShareLog
I0614 17:29:51.318919 10448 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.318982 10448 Kafka.cc:449] create topic handle: SolvedShare
I0614 17:29:51.349684 10448 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.349747 10448 Kafka.cc:449] create topic handle: CommonEvents
I0614 17:29:51.380530 10448 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 17:29:51.380563 10448 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 17:29:51.380712 10448 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.380759 10448 Kafka.cc:449] create topic handle:
AuxPowSolvedShare
I0614 17:29:51.411439 10448 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 17:29:51.411531 10448 Kafka.cc:449] create topic handle:
RskSolvedShare
I0614 17:29:51.442106 10448 StratumServer.cc:789] stratum server running
E0614 17:29:51.761446 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 17:29:51.761500 10455 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 17:29:52.262183 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 17:29:52.262234 10455 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0614 17:29:52.425482 10448 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0614 17:29:52.425540 10448 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0614 17:29:52.425693 10448 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0614 17:29:52.425813 10448 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0614 17:29:52.425930 10448 StratumSession.cc:76] client connect, ip:
<IP_ADDRESS>
I0614 17:29:52.425992 10448 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 17:29:52.426054 10448 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000000"],["mining.notify","01000000"]],"01000000",8],"error":null}
I0614 17:29:52.426124 10448 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 17:29:52.426162 10448 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000004"],["mining.notify","01000004"]],"01000004",8],"error":null}
I0614 17:29:52.426180 10448 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 17:29:52.426350 10448 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000001"],["mining.notify","01000001"]],"01000001",8],"error":null}
I0614 17:29:52.426380 10448 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 17:29:52.426414 10448 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000002"],["mining.notify","01000002"]],"01000002",8],"error":null}
I0614 17:29:52.426482 10448 StratumSession.cc:178] recv(72):
{"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 17:29:52.426518 10448 StratumSession.cc:502] send(114) to  :
{"id":1,"result":[[["mining.set_difficulty","01000003"],["mining.notify","01000003"]],"01000003",8],"error":null}
I0614 17:29:52.426543 10448 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0614 17:29:52.426581 10448 StratumSession.cc:345] cannot find user id
I0614 17:29:52.426594 10448 StratumSession.cc:315] cannot switch user chain
W0614 17:29:52.426604 10448 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 17:29:52.426635 10448 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0614 17:29:52.426812 10448 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0614 17:29:52.426910 10448 StratumSession.cc:345] cannot find user id
I0614 17:29:52.426926 10448 StratumSession.cc:315] cannot switch user chain
W0614 17:29:52.426935 10448 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 17:29:52.426962 10448 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0614 17:29:52.427013 10448 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0614 17:29:52.427043 10448 StratumSession.cc:345] cannot find user id
I0614 17:29:52.427055 10448 StratumSession.cc:315] cannot switch user chain
W0614 17:29:52.427064 10448 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 17:29:52.427088 10448 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0614 17:29:52.427109 10448 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0614 17:29:52.427189 10448 StratumSession.cc:345] cannot find user id
I0614 17:29:52.427203 10448 StratumSession.cc:315] cannot switch user chain
W0614 17:29:52.427212 10448 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 17:29:52.427237 10448 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
I0614 17:29:52.427256 10448 StratumSession.cc:178] recv(62):
{"id":1,"method":"mining.authorize","params":["testpool",""]}
I0614 17:29:52.427280 10448 StratumSession.cc:345] cannot find user id
I0614 17:29:52.427292 10448 StratumSession.cc:315] cannot switch user chain
W0614 17:29:52.427301 10448 StratumSessionBitcoin.cc:463] authorize failed,
workerName:testpool.default, password: , versionMask: 00000000,
clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 17:29:52.427325 10448 StratumSession.cc:502] send(60) to
testpool.default : {"id":1,"result":null,"error":[29,"Invalid
username",null]}
E0614 17:29:52.762779 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 17:29:52.762842 10455 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 17:29:53.263494 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 17:29:53.263594 10455 UserInfo.cc:401] http get request user list
fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 17:29:53.764189 10455 Utils.cc:260] unable to request data from:
https://pool.hashpanel.com/userlist.
my sserver.cnf
testnet = false;
kafka = {
brokers = "<IP_ADDRESS>:9092"; # "<IP_ADDRESS>:9092,<IP_ADDRESS>:9092,..."
};
zookeeper = {
brokers = "<IP_ADDRESS>:2181"; # "<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,..."
};
sserver = {
serverType
type = "LTC";
ip = "<IP_ADDRESS>";
port = 3333;
id = 1;
zookeeper_lock_path = "/locks/sserver_bch";
file_last_notify_time =
"/work/btcpool/data/build/run_sserver/sserver_lastnotifytime.txt";
tcp_read_timeout = 600;
share_avg_seconds = 10;
max_job_lifetime = 300;
mining_notify_interval = 30;
default_difficulty = "4000";
max_difficulty = "4000000000000000";
min_difficulty = "40";
diff_adjust_period = 900;
version_mask = 536862720;
job_topic = "LtcJob";
share_topic = "ShareLog";
solved_share_topic = "SolvedShare";
auxpow_solved_share_topic = "AuxPowSolvedShare"; # auxpow (eg. Namecoin)
solved share topic
rsk_solved_share_topic = "RskSolvedShare";
common_events_topic = "CommonEvents";
enable_simulator = false;
enable_submit_invalid_block = false;
enable_dev_mode = false;
dev_fixed_difficulty = 0.005;
};
users = {
list_id_api_url = "https://pool.hashpanel.com/userlist.php";
case_insensitive = true;
};
On Fri, Jun 14, 2019 at 2:33 PM YihaoPeng<EMAIL_ADDRESS>wrote:

@yurisyb https://github.com/yurisyb Oh, I noticed that error: Out of
memory, it seems a bug in libcurl because of the inconsistent dependent
library version..
Consider apt upgrade, then rebuild libcurl and rebuild btcpool.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/btccom/btcpool/issues/311?email_source=notifications&email_token=AJHDH75L7KGSXO6LBCLC4JDP2M3U3A5CNFSM4HWQLDH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXV3NVQ#issuecomment-501987030,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJHDH7ZFMUGXEFBI3NGUIPTP2M3U3ANCNFSM4HWQLDHQ
.

@yurisyb Oh, I noticed that error: Out of memory, it seems a bug in libcurl because of the inconsistent dependent library version. I have encountered the same error, it has nothing to do with the size of your memory.
Consider apt upgrade, then rebuild libcurl and rebuild btcpool (use a clean build dir).

still got the error
i have removed the build folder and rebuilt again after libcurl
my curl version is 7.65.1
error:
Log file created at: 2019/06/14 19:45:15
Running on machine: testpool
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
I0614 19:45:15.096740  4402 StratumServerMain.cc:132] LTC sserver version 2.3.2-291-g2cb2649
I0614 19:45:15.097163  4402 StratumServerMain.cc:70] createServer type: LTC
I0614 19:45:15.097223  4402 StratumServer.cc:449] [Option] stale shares will be accepted.
I0614 19:45:15.097288  4402 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 19:45:15.097316  4402 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 19:45:15.097329  4402 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 19:45:15.097342  4402 Kafka.cc:81] consumer librdkafka version: 0.9.1
I0614 19:45:15.097378  4402 UserInfo.cc:45] UserInfo: user name will be case insensitive
I0614 19:45:15.099754  4402 StratumServer.cc:135] set max job lifetime to 300s
I0614 19:45:15.099784  4402 StratumServer.cc:140] set mining notify interval to 30s
I0614 19:45:15.100040  4402 Kafka.cc:163] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.100103  4402 Kafka.cc:170] create topic handle: LtcJob
E0614 19:45:15.100680  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:15.100878  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0614 19:45:15.130998  4402 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.131078  4402 Kafka.cc:449] create topic handle: ShareLog
I0614 19:45:15.131253  4415 StratumServer.cc:193] start job repository consume thread
I0614 19:45:15.161957  4402 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.162025  4402 Kafka.cc:449] create topic handle: SolvedShare
I0614 19:45:15.192790  4402 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.192932  4402 Kafka.cc:449] create topic handle: CommonEvents
I0614 19:45:15.224534  4402 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 19:45:15.224567  4402 Kafka.cc:368] producer librdkafka version: 0.9.1
I0614 19:45:15.224848  4402 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.224905  4402 Kafka.cc:449] create topic handle: AuxPowSolvedShare
I0614 19:45:15.255785  4402 Kafka.cc:442] add brokers: <IP_ADDRESS>:9092
I0614 19:45:15.255949  4402 Kafka.cc:449] create topic handle: RskSolvedShare
I0614 19:45:15.286851  4402 StratumServer.cc:789] stratum server running
E0614 19:45:15.603307  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:15.603511  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0614 19:45:15.720095  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.720576  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.720746  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.720865  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.721026  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.721269  4402 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 19:45:15.721494  4402 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000000"],["mining.notify","01000000"]],"01000000",8],"error":null}
I0614 19:45:15.721590  4402 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 19:45:15.721714  4402 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000001"],["mining.notify","01000001"]],"01000001",8],"error":null}
I0614 19:45:15.721801  4402 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 19:45:15.721918  4402 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000002"],["mining.notify","01000002"]],"01000002",8],"error":null}
I0614 19:45:15.722060  4402 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 19:45:15.722471  4402 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000003"],["mining.notify","01000003"]],"01000003",8],"error":null}
I0614 19:45:15.722589  4402 StratumSession.cc:178] recv(72): {"id":1,"method":"mining.subscribe","params":["btccom-agent/1.0.0-su"]}
I0614 19:45:15.722735  4402 StratumSession.cc:502] send(114) to  : {"id":1,"result":[[["mining.set_difficulty","01000004"],["mining.notify","01000004"]],"01000004",8],"error":null}
I0614 19:45:15.723505  4402 StratumSession.cc:178] recv(58): {"id":1,"method":"mining.authorize","params":["yuri",""]}
I0614 19:45:15.723678  4402 StratumSession.cc:345] cannot find user id
I0614 19:45:15.723767  4402 StratumSession.cc:315] cannot switch user chain
W0614 19:45:15.723824  4402 StratumSessionBitcoin.cc:463] authorize failed, workerName:yuri.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 19:45:15.723975  4402 StratumSession.cc:502] send(60) to yuri.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0614 19:45:15.724074  4402 StratumSession.cc:178] recv(58): {"id":1,"method":"mining.authorize","params":["yuri",""]}
I0614 19:45:15.724210  4402 StratumSession.cc:345] cannot find user id
I0614 19:45:15.724274  4402 StratumSession.cc:315] cannot switch user chain
W0614 19:45:15.724326  4402 StratumSessionBitcoin.cc:463] authorize failed, workerName:yuri.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 19:45:15.724452  4402 StratumSession.cc:502] send(60) to yuri.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0614 19:45:15.724546  4402 StratumSession.cc:178] recv(58): {"id":1,"method":"mining.authorize","params":["yuri",""]}
I0614 19:45:15.724659  4402 StratumSession.cc:345] cannot find user id
I0614 19:45:15.724720  4402 StratumSession.cc:315] cannot switch user chain
W0614 19:45:15.724771  4402 StratumSessionBitcoin.cc:463] authorize failed, workerName:yuri.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 19:45:15.724894  4402 StratumSession.cc:502] send(60) to yuri.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0614 19:45:15.725024  4402 StratumSession.cc:178] recv(58): {"id":1,"method":"mining.authorize","params":["yuri",""]}
I0614 19:45:15.725164  4402 StratumSession.cc:345] cannot find user id
I0614 19:45:15.725229  4402 StratumSession.cc:315] cannot switch user chain
W0614 19:45:15.725281  4402 StratumSessionBitcoin.cc:463] authorize failed, workerName:yuri.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 19:45:15.725399  4402 StratumSession.cc:502] send(60) to yuri.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0614 19:45:15.725493  4402 StratumSession.cc:178] recv(58): {"id":1,"method":"mining.authorize","params":["yuri",""]}
I0614 19:45:15.725606  4402 StratumSession.cc:345] cannot find user id
I0614 19:45:15.725666  4402 StratumSession.cc:315] cannot switch user chain
W0614 19:45:15.725718  4402 StratumSessionBitcoin.cc:463] authorize failed, workerName:yuri.default, password: , versionMask: 00000000, clientAgent: btccom-agent/1.0.0-su, clientIp: <IP_ADDRESS>
I0614 19:45:15.725839  4402 StratumSession.cc:502] send(60) to yuri.default : {"id":1,"result":null,"error":[29,"Invalid username",null]}
I0614 19:45:15.934624  4402 StratumSession.cc:76] client connect, ip: <IP_ADDRESS>
I0614 19:45:15.935225  4402 StratumSession.cc:178] recv(81): {"id": 8, "method": "mining.subscribe", "params": ["cgminer/4.9.2", "0100000e"]}
I0614 19:45:15.935459  4402 StratumSession.cc:502] send(114) to  : {"id":8,"result":[[["mining.set_difficulty","01000005"],["mining.notify","01000005"]],"01000005",8],"error":null}
E0614 19:45:16.104697  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:16.105213  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
I0614 19:45:16.320302  4402 StratumSession.cc:178] recv(70): {"id": 9, "method": "mining.authorize", "params": ["yuri", "(null)"]}
memory info:
root@testpool:/etc/supervisor/conf.d# free -h
total        used        free      shared  buff/cache   available
Mem:           7.7G        1.2G        5.9G        2.9M        604M        6.3G
Swap:          3.9G          0B        3.9G
Log
Log file created at: 2019/06/14 19:45:15
Running on machine: testpool
Log line format: [IWEF]mmdd hh:mm:ss.uuuuuu threadid file:line] msg
E0614 19:45:15.100680  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:15.100878  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:15.603307  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:15.603511  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:16.104697  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:16.105213  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:16.606051  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:16.606148  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:17.106782  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:17.106851  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:17.607473  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:17.607568  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:18.108184  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:18.108311  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:18.608935  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:18.609051  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:19.109660  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:19.109781  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:19.610319  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:19.610383  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:20.110967  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:20.111112  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:20.611634  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:20.611757  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0
E0614 19:45:21.112946  4406 Utils.cc:260] unable to request data from: https://pool.hashpanel.com/userlist.php?last_id=0, error: Out of memory
E0614 19:45:21.113261  4406 UserInfo.cc:401] http get request user list fail, url: https://pool.hashpanel.com/userlist.php?last_id=0

this is what i can see
work/btcpool/build/run_sserver/sserver: /usr/local/lib/libcurl.so.4: no version information available (required by /work/btcpool/build/run_sserver/sserver)

I don't have a better solution to this problem with libcurl. I can only paste the following question for you:
https://stackoverflow.com/questions/28048885/initializing-ssl-and-libcurl-and-getting-out-of-memory

As the descibed in this answer, you might need to disable SSLv3 if you are on Ubuntu 16.04 like so
curl_easy_setopt(curl_, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2));
It was disabled on Ubuntu 16.04 for security reasons, see more here.


Add 1 hour timeouts to all copyArtifacts steps

Avoid long hanging builds when copyArtifacts hangs
Signed-off-by: Adam Brousseau<EMAIL_ADDRESS>

Looking for feedback @llxia
I have been finding jobs hung for hours on the copyArtifacts step. This ties up machine time. I have wrapped all the copyArtifact steps in 1 hour timeouts. We can keep some or all or we can adjust the times to our liking. What are your thoughts? If you wish I can provide some links to internal builds I have come across.

Screenshot:

Script approved at Adopt server.


A prompt is missing during form validation

表单验证时，缺少提示语 。 请全局自查

wait for @capdiem to check

it due to Masa.Blazor and Masa.Framwork ,  it will be fixed after theirs update.


Use go-toolset golang base image for redhat builds

Use root user instead of the 'default' user from go-toolset to avoid an error like this:
fatal: detected dubious ownership in repository at '/build'
To add an exception for this directory, call:
git config --global --add safe.directory /build
Could also have solved the problem by doing a --chown=default:root when copying in the files.

Does this leave the working user as root and does that present any security concerns?

Does this leave the working user as root and does that present any security concerns?

No, because it's just the build step. In the final image we have USER 1001.

Does this leave the working user as root and does that present any security concerns?

No, because it's just the build step. In the final image we have USER 1001.

Ack.


Generate CSS file by scanning a PSD file

Instead of we selecting each layer in the PSD file to get its CSS, there should be an automated mechanism of scanning all the PSD layers and generating a CSS file.
This will ensure that we don't miss out any of the sections/ layers in the PSD file while converting the PSD file to an HTML page.
Also, this will be fast and reliable approach to convert PSD files to HTML files.

The first problem that comes to my mind after reading this: How should Extract/Brackets determine what rules it should create, i.e. what selectors it should apply?

+1

Brackets is able to apply the rules based on the layer selected by the
user. This is already happening. It is able to determine the rules and
generate it (CSS) for the user.
Instead of selecting individual layers and checking the CSS rules for the
selected layer, Brackets should parse all the layers, generate their CSS
rules and put them all in a separate file.
Hope this clarifies my point.
On Wed, Apr 15, 2015 at 10:57 AM, Rishabh<EMAIL_ADDRESS>wrote:

+1
—
Reply to this email directly or view it on GitHub
https://github.com/adobe/brackets/issues/10619#issuecomment-93249896.

--
Regards,
Mohammed Anwaar

Deprecated feature See details . Closing.
Marking as extension idea.


change minimum golang version from v1.15 to v1.18

Codecov Report
Patch coverage: 94.11% and project coverage change: +0.09% :tada:

Comparison is base (e0e0043) 79.22% compared to head (952b8fa) 79.32%.
Report is 1 commits behind head on master.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2820      +/-   ##
==========================================
+ Coverage   79.22%   79.32%   +0.09%
==========================================
  Files         633      626       -7
  Lines       52242    51935     -307
==========================================
- Hits        41391    41197     -194
+ Misses       8808     8718      -90
+ Partials     2043     2020      -23

Flag
Coverage Δ

go-1.15-386
?

go-1.15-amd64
?

go-1.16-386
?

go-1.16-amd64
?

go-1.17-386
?

go-1.17-amd64
?

go-1.18-386
?

go-1.18-amd64
?

go-1.19-386
?

go-1.19-amd64
?

go-1.20-386
79.22% <94.11%> (+0.03%)
:arrow_up:

go-1.20-amd64
79.31% <94.11%> (+0.10%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed
Coverage Δ

os/gfile/gfile_copy.go
45.26% <50.00%> (ø)

debug/gdebug/gdebug_version.go
71.42% <100.00%> (ø)

encoding/gbase64/gbase64.go
58.33% <100.00%> (ø)

encoding/gcharset/gcharset.go
87.75% <100.00%> (ø)

net/gclient/gclient_dump.go
67.44% <100.00%> (ø)

net/gclient/gclient_request.go
71.05% <100.00%> (ø)

net/gclient/gclient_response.go
90.00% <100.00%> (ø)

net/gclient/gclient_tracing.go
82.00% <100.00%> (ø)

net/gclient/gclient_tracing_tracer.go
63.20% <100.00%> (ø)

net/ghttp/ghttp_middleware_tracing.go
82.60% <100.00%> (ø)

... and 3 more

... and 13 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[9.x] Add "getChunk" method to Filesystem

The get method is a wrapper around the file_get_contents but it does not give the option of reading a portion of a big file.
So the getChuck method can be useful.
Backward Compatibility:
Adding more parameters to get method is not backward compatible in case someone overrides the method in a subclass.
so I decided to implement a new method. This is still theoretically a breaking change in case someone has implemented a getChunck method in a subclass with a different signature, which is very unlikely.

The get method reuses the new method to avoid duplication of logic.

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.

My implementation is incorrect.


Document EvaluationContext members.

When working on a provider I noticed that there were a number of empty documentation comments in the EvaluationContext.
In addition to filling those out I thought it would be nice if it was clear what the behavior was regarding missing keys, duplicate keys, etc.

Looks like you need to sign off your commits.

Looks like you need to sign off your commits.

I think I have rectified it. Thank you.


Problems with facebook scraper

I think facebook scraper is not working anymore. I've been trying in different ways, this is the latest code that I ran but even though I requested delays (in case of traffic) there aren't an aswer for Facebook server. Does anybody have this problem?
!pip install facebook-scraper --upgrade
from facebook_scraper import get_posts, _scraper
import json
import random
import time

def delay():
    time.sleep(random.uniform(1, 5))  # Delay between 1 and 5 seconds

for post in get_posts('UltimaHoracom',
                      base_url="https://mbasic.facebook.com",
                      start_url="https://mbasic.facebook.com/UltimaHoracom?v=timeline",
                      pages=1,
                      options={"allow_extra_requests": True, "sleep": 1}):
    print(post['text'][:50])
    delay()

UnexpectedResponse: Your request couldn't be processed

@Davidbenjul check the README on the right way to install this version of the library. The PIP version is outdated, you will need to get it from github

Thank you so much @moda20 , your code is beautiful and very helpful but i couldn't had the request. Apparently there are new data privacy rules in meta that contrains a lot scraping. I index the note that i found: https://about.fb.com/news/2021/08/research-cannot-be-the-justification-for-compromising-peoples-privacy/.
All the best!

@Davidbenjul i see, then i'll close this since it's more of an overarching issue rather than a specific one, reopen if there is any progress


Micro Apps

Can it be used to develop micro apps without dependancies between them, if so how to do so ?

Yes, you probably want to include some dependencies to be shared like React and React Native. You can configure how you want to include dependencies inside chunks: https://webpack.js.org/plugins/split-chunks-plugin/#optimizationsplitchunks

@zamotany it would be great if this repo has an example for such usecase.

Closing this due to inactivity. If you want to provide more info or an example with "micro app" concept implement feel free to open a new issue and a PR :)


Does GCpp support MPI (parallelisation) natively?

Operating system
Red Hat (??) Ohio Supercomputer Centre HPC
Package name
GCpp
Quick Question: Does GCpp support parallelisation natively?  In other words, if I'm using a large cluster, can I split the polishing job accross multiple nodes?

No


Fixes for building on Windows with msys.

On Windows $(OUT_DIR) is a Windows path, it needs to be quoted so the backslashes aren't treated as escape characters. I can cargo build on Windows under Msys with this change.
The CMake generator also needs to be specified on Windows, otherwise it will default to generating Visual Studio projects.

@ellisonch This problem has been fixed by https://github.com/servo/glfw/pull/5
The remaining issue is cmake defaulting to Visual Studio project files instead of Makefiles. IMHO this should be fixed in (MSYS2's) cmake instead: it should default to Unix Makefiles when make.exe is present on the path.
There has also been a discussion on this topic in the MSYS2 mailing list<EMAIL_ADDRESS>

The full diff shows 0 changes, so this looks like it's addressed by existing commits.


app.json_encoder removed in Flask 2.3

The README.md instructs users with Flask apps behind reverse proxies to set:
app.json_encoder = LazyJSONEncoder

But since Flask 2.3, app.json_encoder has been removed. So what is the recommended solution today?
I have an issue with Flasgger/Flask behind a reverse proxy and it seems to be caused by this change in Flask.

#568

Created the PR: #569


Setup and configure mkdocs, write initial docs

Description
We need a place to write documentation for PineSAM and accept contributions from non-technical end users who wish to add items to the FAQ, add information, and otherwise grow the project.
This is a fairly large PR but it is the result of about a week of work getting things setup and configured how we think it should be.
This change implements mkdocs and adds a bunch of content as well as a framework for additional documentation.
Related Issues
N/A
Screenshots
https://neil-forks.github.io/PineSAM-river/
Checklist

[x] I have tested my changes locally and they work as expected.
[x] I have updated the documentation, if applicable.
[x] I have added appropriate tests, if applicable.
[x] I have run the linter and fixed any issues, if applicable.

Other information
n/a

the way you did the contributors at the bottom is my favorite part, clean and simple. black & white so it blends in unless you hover on names.


Modify AnimatedSwitcher to better allow different in vs. out transitions

See this discussion I had with myself on flutter_dev: https://groups.google.com/forum/#!topic/flutter-dev/mTKt7qJaqBM
AnimatedSwitcher is designed to use a single animation for incoming items and the reversed animation for the outgoing items. But that is not always what is desired. For example, I might want to slide new items in from the left and slide the previous item out to the right.
It is not clear how to actually achieve that with AnimatedSwitcher. As you can see in that thread I spent a day of hacking and figured out how to make it work, but there should be a better, clearly defined way to accomplish this.
My thought is another optional AnimatedSwitcherTransitionBuilder parameter like exitTransitionBuilder that can be passed to AnimatedSwitcher that is only used on the exiting items. When that parameter is present the Animation should run in the forward direction (i.e. you would not reverse the animation controller for that item).

Having a different animation between child in and out might cause some unexpected behavior if we change the children really fast. The child, while is still transitioning in, gets kick to transition out. In the current behavior, the child will keep the current animation value and do the reverse. This make sense if the transition are the same, but you might see a suddenly jump due to different animation
Same animation Scale

Different animation Scale vs Fade

It will jump even more if you have very different animations. I will need more clarification on what are the expected behaviors in this two cases to continue on this issue

That is a concern but not one that should prevent allowing for the feature. It can be a note that this is a potential issue.
In my case I was actually looking to only animate the in, and not have any out animation. I have an item that is Swipeable (with a custom implementation that allows me to swipe in any direction) and then all I do is animate the new item in.

@dalewking
If the use case to only do partial transition, I think allowing a different out transition builder that are kind of broken to be able to achieve your use case is not ideal. Besides, there is already a way to achieve this.
Here is a more polish version of it
transitionBuilder: (Widget child, Animation<double> animation) {
                switch (animation.status){
                  case AnimationStatus.completed:
                  case AnimationStatus.reverse:
                    // In reverse direction
                    return child;
                  case AnimationStatus.dismissed:
                  case AnimationStatus.forward:
                  return ScaleTransition(child: child, scale: animation);
                }
                return child;
              }

We will not change the api as this way of changing the animation is not recommended; however, we will document this behavior and add a test to guard against any change to the api.

As I posted in the linked thread there is also some weirdness that the transition builder may or may not be called on the exiting item. If it is a lambda, it fails the equals check and will be called again, if it is a method reference it compares as equal and is not called again.

We proceed with the plan to not changing animatedswitcher. The reason being animatedswitcher is not really built for supporting different animations for transition in & out. It might create the risk of having broken animation, and that is against our core values If you want to have special animation effect different from animatedswitcher, we suggest to build a custom animation widget to achieve the goal.
let me know if you have trouble doing so, I am always happy to help.

This can be achieved using the following custom transitionBuilder
transitionBuilder: (Widget child, Animation<double> animation) {
  if (child.key == ValueKey(index)) {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(1.0, 0),
        end: Offset(0.0, 0),
      ).animate(animation),
      child: child,
    );
  } else {
    return SlideTransition(
      position: Tween<Offset>(
        begin: Offset(-1.0, 0),
        end: Offset(0.0, 0),
      ).animate(animation),
      child: child,
    );
  }
}

Here's a more full example
class MyUI extends StatelessWidget {
}

As I pointed out in the thread linked in that ticket that works IF you use
a lambda for defining the transition builder. If you move the transition
builder to a function it will not work due to the fact that they will
compare as equal. So it works but by accident.
At least that's what I remember but I have not looked at it in a long time.
On Sat, May 1, 2021, 6:21 PM Michael McCormick @.***>
wrote:

This can be achieved using the following custom transitionBuilder
transitionBuilder: (Widget child, Animation animation) {
if (child.key == ValueKey(index)) {
return SlideTransition(
position: Tween(
begin: Offset(1.0, 0),
end: Offset(0.0, 0),
).animate(animation),
child: child,
);
} else {
return SlideTransition(
position: Tween(
begin: Offset(-1.0, 0),
end: Offset(0.0, 0),
).animate(animation),
child: child,
);
}
}
Here's a more full example
class MyUI extends StatelessWidget {
}
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/flutter/flutter/issues/19395#issuecomment-830702675,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACUPTUYPC3WLJFWFAIMTQTTLR5HTANCNFSM4FKCFTLQ
.


Efficiently bulk-add members to Semaphore Group

Is your feature request related to a problem? Please describe.
Creating large Semaphore groups is slow.
Describe the solution you'd like
The implementation of Group has the following two functions:

addMember
addMembers

addMembers is inefficient for large amounts of members, because it simply calls addMember in a loop. Based on my understanding of the underlying implementation of the Merkle tree, I believe this causes the tree to re-hash its nodes for every individual member added to the group. I think there should be a more efficient way to interact with the merkle tree data structure, where all the nodes are added at once, then hashed once they have been added.
Describe alternatives you've considered

running Group instantiation in a web worker
having smaller groups

Additional context

This has come up due to the size of the Zuzalu semaphore group

Hi @ichub, the addMember function calculates N = depth hashes for each insertion. If depth = 16 and numberOfMembers = 500, the addMembers function needs to calculate 16*500 hashes. It takes 1.4s in my laptop, but it might actually be much more on other environments, so it's not ideal for client-side apps.

Makes sense.

I can't think of ways to make it more efficient, unless we change data structure.

My suggestion is to change the data structure to allow you to instantiate a group from an array of members, rather than by adding members one by one. I think this would improve performance significantly.
For example, let's say we have a group of size 2^16, i.e. 65536, and we add 65536 members to it one by one.
The current way addMembers is implemented, it would take 65536 * 16 = 2^20 hashes to instantiate a Group.
If the group was able to be instantiated all at once, rather than one member at a time, the total number of hashes that would need to be calculated would equal 2 ^ 16 + 2 ^ 15 + 2 ^ 14 ... + 1 = 2^17 - 1, which is appx. 2 ^ 3 or 8 times faster.

In Bandada we also store the members in a server DB, but when we run the app we create cached JS Groups based on stored members and we keep them synced as new members are added, so that it can provide an API to generate proofs of membership calculated on server-side. Clients can then use that API rather than download the list of members and calculate the proof of membership themselves.

To extrapolate from the benchmark you ran on your computer, (8000 hashes/1.4s), this could improve server-side calculation of hashes from (2^20) / 8000 * 1.4 = 184 seconds  to (2^17 - 1) / 8000 * 1.4 = 23 seconds.
Furthermore, it may be a good idea to be able to save Groups to disk, and be able to instantiate them from a serialized format without having to recalculate any hashes at all, reducing startup time to something completely negligible.

If the group was able to be instantiated all at once, rather than one member at a time, the total number of hashes that would need to be calculated would equal 2 ^ 16 + 2 ^ 15 + 2 ^ 14 ... + 1 = 2^17 - 1, which is appx. 2 ^ 3 or 8 times faster.

I'm not sure if I got it and you thought about the same solution, but we can actually just skipping hashing a lot of pairs with zero values, as we already have all the members. In that case the number of hashes required to insert 2^16 leaves would be equal to ~2^16 itself I think
I just tested it and created a PR in the @zk-kit/incremental-merkle-tree library: https://github.com/privacy-scaling-explorations/zk-kit/pull/59/files#diff-c610f7859836b236def3aa08507f455f35fb7f5bfa1604039752c64db3d7908c. I'll add more info soon. Could take a look?
Considering arity = 2 it looks to be 10 times faster.

I'm not sure if I got it and you thought about the same solution, but we can actually just skipping hashing a lot of pairs with zero values, as we already have all the members. In that case the number of hashes required to insert 2^16 leaves would be equal to ~2^16 itself I think

Yes, this is where part of the performance improvement comes from. Another component of the performance improvement comes from not having to hash the children of any node more than precisely once, which is what I was basing my calculations off of.
In practice, most groups will likely have far fewer members than they have capacity for, which means yes, many pairs are just zero values, so don't have to be re-hashed.

I eagerly await this performance improvement being deployed, so we can see some gains in production! Thanks for looking into this on such short notice.

Thanks for pointing it out! A lot of people will be able to benefit from it, as that library is quite widely used. As soon as the PR is reviewed by the other people we'll release a new zk-kit and semaphore version.

Amazing! Just curious, but what is your release schedule, i.e. when will this make it to npm?

It's already available, let us know if it works properly!


[Embed] Add Youtube videos with "rel" parameter

It would be nice to be able to set the "rel" parameter (https://developers.google.com/youtube/player_parameters?hl=en#rel).
e.g.
$('.custom.example .ui.embed').embed({
  source      : 'youtube',
  id          : 'O6Xo21L0ybE',
  placeholder : '/images/bear-waving.jpg',
  rel : 0
});

I made the following change in order to always have "rel=0":
diff --git a/semantic/src/definitions/modules/embed.js b/semantic/src/definitions/modules/embed.js
index 6ed6f5a..d96bfd4 100644
--- a/semantic/src/definitions/modules/embed.js
+++ b/semantic/src/definitions/modules/embed.js
@@ -634,7 +634,8 @@ $.fn.embed.settings = {
           color          : settings.color || undefined,
           hq             : settings.hd,
           jsapi          : settings.api,
-          modestbranding : !settings.brandedUI
+          modestbranding : !settings.brandedUI,
+          rel            : 0
         };
       }
     },

As a hack until this happens: You can set an explicit URL and tack on a # at the end; everything after the # will be ignored.
Best to fix it in the framework itself, though.  Maybe have a documented way of adding extra parameters so the framework doesn't have to be updated the moment video services add new features?  (YouTube has a number of useful parameters like showinfo and controls that are not supported by Semantic UI.)


fix: better navigator.webdriver faking

fixes #13

why this is not merged?

fails on selenium-detector with detected
because the hasConstructorAlias test fails on window.Array
fails on cloudflare with playwright._impl._api_types.Error: net::ERR_ABORTED
but this could be a different issue
the linked stackoverflow answer shows different code, but that also fails on selenium-detector
- Object.defineProperty(Object.getPrototypeOf(navigator), 'webdriver', {
+ Object.defineProperty(Navigator.prototype, 'webdriver', {

with (
    playwright.sync_api.sync_playwright() as pw,
):
    browser = pw.chromium.launch()
    page = browser.new_page()
    playwright_stealth.stealth_sync(page)
    # NOTE changes take effect only on the first page.goto
    page.goto("https://google.de/") # TODO localhost server
    assert page.evaluate("navigator.webdriver") == False
    js = "Object.getOwnPropertyDescriptor(Navigator.prototype, 'webdriver').get.toString()"
    # this fails. actual value: function () { [native code] }
    assert page.evaluate(js) == "function get webdriver() { [native code] }"

it should be easier to pass --disable-blink-features=AutomationControlled to chrome, but this has no effect, and also fails on selenium-detector
with (
    playwright.sync_api.sync_playwright() as pw,
):
    browser = pw.chromium.launch(
        args=[
            # none of these are working
            "--disable-blink-features",
            "--disable-blink-features=AutomationControlled",
            "--enable-automation=False",
        ],
    )

Hey @AtuboDad can this feature get released? :) Seems its not in the latest pypi version

Hey @AtuboDad, a subtle reminder the pypi version is not up to date with this repo.


As a user, I want to be able to access the syllabus for a course from my dashboard.

#124 addresses this issue.