[WIP] ARROW-453: [C++] Filesystem implementation for S3

Unit testing is done using the Minio standalone S3 server.
Currently missing from this PR:

enable building and unit testing on CI
fix the bundled building (currently it links against the wrong version of libcrypto, ending up loading two different OpenSSL versions at runtime)
expose and/or propagate more S3 configuration options

s3fs test passed on Travis-CI: https://travis-ci.org/pitrou/arrow/jobs/575384780#L5243

s3fs test passed on AppVeyor: https://ci.appveyor.com/project/pitrou/arrow/build/job/o639sped92wndo5f#L1740

Codecov Report

Merging #5167 into master will increase coverage by 1.09%.
The diff coverage is 94.59%.

@@            Coverage Diff             @@
##           master    #5167      +/-   ##
==========================================
+ Coverage   87.63%   88.73%   +1.09%
==========================================
  Files        1022      935      -87
  Lines      146258   121759   -24499
  Branches     1437     1437
==========================================
- Hits       128174   108041   -20133
+ Misses      17722    13356    -4366
  Partials      362      362

Impacted Files
Coverage Δ

cpp/src/arrow/testing/util.h
94.44% <ø> (ø)
:arrow_up:

cpp/src/arrow/filesystem/filesystem.h
100% <ø> (ø)
:arrow_up:

cpp/src/arrow/filesystem/filesystem.cc
74.38% <0%> (-12.16%)
:arrow_down:

cpp/src/arrow/filesystem/test_util.cc
99.38% <100%> (+0.04%)
:arrow_up:

cpp/src/arrow/filesystem/path_util.h
100% <100%> (ø)
:arrow_up:

cpp/src/arrow/filesystem/test_util.h
100% <100%> (ø)
:arrow_up:

cpp/src/arrow/filesystem/s3_internal.h
100% <100%> (ø)

cpp/src/arrow/filesystem/s3fs.h
100% <100%> (ø)

cpp/src/arrow/testing/util.cc
95.5% <100%> (+0.26%)
:arrow_up:

cpp/src/arrow/filesystem/s3fs.cc
92.93% <92.93%> (ø)

... and 100 more

Continue to review full report at Codecov.

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

Will endeavor to get a review to you in the next couple working days

Ok, I added a narrative test and checked it against Amazon. Also addressed some review comments.

Thanks @fsaintjacques :-)


Uncaught TypeError: target.toJSON is not a function

I simplified a use case I have in my code.
From the console of the live test page:
x = Introspected({arr: []})
Proxy {arr: Array(0)}

Introspected.observe(x.arr, () => {})
Uncaught TypeError: target.toJSON is not a function
    at Function.Introspected [as observe] (introspected.js:179)
    at <anonymous>:1:14

Introspected.observe(x.arr)
[copyWithin: ƒ, fill: ƒ, pop: ƒ, push: ƒ, reverse: ƒ, …]

Is it expected? Am I missing anything?

I haven't touched this repo in ages ... and I am not planning to change anything in here for a while (busy with hyperHTML refactoring at the moment)
what is it that is not working?
was it working before?
any idea what could cause the issue?
and so on :smiley:

I was following this approach, described in another issue, to trigger the callback when I have a state with nested Introspected objects.
The pattern is modifying the Introspected object inside the callback of the observe method of the nested Introspected object just to trigger the "main" callback.
As we talked in the other issue, this doesn't work, meaning the callback is not fired:
this.state.ohlcInfo.feed = QuotesService.getQuotes();
So a feasible way to resolve it, at least for me, is the following approach:
Introspected.observe(QuotesService.getQuotes(), state => {
    if (JSON.stringify(state) !== "{}") {
        this.state.ohlcInfo.feed = JSON.stringify(state.quotes[this.state.selectedInstrument]);
    }
});

It works for objects, but not for arrays:
x = Introspected({obj: {}})
Proxy {obj: Proxy}
Introspected.observe(x.obj, () => {})
Proxy {}

Indeed the offending line in Introspected is the following one (179):
known.get(target.toJSON()).O.$.add(callback);
And target, an array, has not toJSON method.

beside the bug, this check is wrong for many reasons
JSON.stringify(state) !== "{}"

what you want there is:
if (Object.keys(state).length) { ...

Moreover, the toJSON is intercepted by the Proxy
https://github.com/WebReflection/introspected/blob/master/introspected.js#L76
if your array has no toJSON it means it's not a Proxy

Thanks for the tip Object.keys(state).length.
Investigating about Proxy reference.
I think I checked it, but I double check that.

Just a moment. :)
My steps to reproduce the issue are the following:

x = Introspected({arr: []})
Introspected.observe(x.arr, () => {}) // exception

Indeed x is a Proxy and x.arr is an Array (in the example above and in my code).
Of course with the workaround { arr: { value: [ ] } } is ok.

x = Introspected({ arr: { value: [ ] } }, () => {})
Introspected.observe(x.arr, () => {}) // ok

So it is not a bug, but a grey zone. :)
The point (I was missing, as usual) is the difference between creating the Introspected object (the Proxy object), containing an array, and extracting that array.
I don't know if this diff is expected, intending objects are returned, if accessed, as Proxy and arrays as Array, but I can live with it.
If it makes sense for you, I can close the issue.

this project is far away from my priority list and it works for what it's meant to do ... it can be improved with branched proxies but that's a whole new world of mess I have zero time to deal with these days.
closing for now, sorry if that's not the best outcome.

No problem.
Introspected is legacy. :)
When the code lands in the master, because the app is working, I intend to refactor the app using hyper.Component and setState approach.

no legacy, I just have other priorities now

Well, legacy for me, because I started the refactoring in May.
Nice to know about the priorities.


Bump Go to 1.4.3 for builder

We already bumped this for Dockerfile, should keep build environment
consistent with that.
Signed-off-by: Qiang Huang<EMAIL_ADDRESS>

/ping @jfrazelle @tianon

LGTM thanks

LGTM :+1:


[Bug] SELECT query result weird

Search before asking

[X] I had searched in the issues and found no similar issues.

Version
1.2.4
What's Wrong?
mysql> select listed_board, count() from security_info group by listed_board order by listed_board;
+--------------+---------+
| listed_board | count() |
+--------------+---------+
| NULL         |  663612 |
| 1            |    3975 |
| 3            |    1973 |
| 4            |     852 |
| 5            |    2479 |
| 6            |     369 |
| 7            |       4 |
| 8            |     482 |
+--------------+---------+
8 rows in set (0.04 sec)

mysql> select count() from security_info where listed_board='1';
+---------+
| count() |
+---------+
|    3904 |
+---------+
1 row in set (0.03 sec)

mysql> select count() from security_info where listed_board=1;
+---------+
| count() |
+---------+
|    3975 |
+---------+
1 row in set (0.03 sec)

The data type of column listed_board is varchar(6), not int.
The result of listed_board='1' is weird, on the contrary, listed_board=1 is right.
What You Expected?
The result of select count() from security_info where listed_board='1' should be 3975. Right data type, right result.
How to Reproduce?
No response
Anything Else?
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

table definition
CREATE TABLE `security_info` (
  `sec_code_par` varchar(75) NOT NULL,
   ...
  `listed_board` varchar(6) NULL,
   ...
) ENGINE=OLAP
UNIQUE KEY(`sec_code_par`)
COMMENT 'OLAP'
DISTRIBUTED BY HASH(`sec_code_par`) BUCKETS 3
PROPERTIES (
"replication_allocation" = "tag.location.default: 3",
"in_memory" = "false",
"storage_format" = "V2",
"enable_unique_key_merge_on_write" = "true",
"disable_auto_compaction" = "false"
)


Overlain histograms need to have the correct bin widths; overlap instead of side-by-side

I think the key here is to switch to histtype='stepfilled' whenever overlay is true, then come up with some sensible defaults for transparency.
This image is representative of what Ani wants:

She thinks we don't need to compare more than two datasets in a single chart.

Agree
On Sep 25, 2015 4:39 AM, "John DeNero"<EMAIL_ADDRESS>wrote:

I think the key here is to switch to histtype='stepfilled' whenever
overlay is true, then come up with some sensible defaults for
transparency.
This image is representative of what Ani wants:
https://camo.githubusercontent.com/c274570ed4aa9dcbc688776473a820e0dcfdb556/68747470733a2f2f62706174746f6e6d74683333322e66696c65732e776f726470726573732e636f6d2f323031322f30322f6d74683333327069633362702e6a7067
She thinks we don't need to compare more than two datasets in a single
chart.
—
Reply to this email directly or view it on GitHub
https://github.com/dsten/datascience/issues/65#issuecomment-143192633.


Request for Resource & Data Source for management of API Tokens

Hey guys,
It would be useful to be able to provision new API tokens through a terraform resource and retrieve them in code. Right now you can only create them manually through the integrations UI.
It would be nice if the tokens had a tag or name that can be referenced instead of just having a description.
Thanks!

Hey @davidfisher01 thanks for the suggestion.  I do have a few questions for you.
1.) Would you expect to beable to provision the API token without first having an API token set in your terraform provider?
1a.) What user should the API token be associated with once its created?
2.) What is the actual concrete usecase you have for needing to provision new API tokens programmatically?
3.) What would you expect the datasource to return - the actual API token of an existing one created in your account?
4.) How do you intend to securely store these API tokens?
I look forward to your answers.

Our specific use case stems from managing a significant amount of these integrations with an API token per github organization roughly, so there are a ton of these tokens that we would rather automate and incorporate into our infrastructure.  I would expect the user to be able to provision a new token without one existing already in its place via a new resource. The created by user can be attributed to either the admin team or just referencing "Terraform" and there can be certain values set on the resource that can define that as well. I would expect the datasource to return the token based off of a tag that the datasource is keying off from. All of the tokens we have are additionally placed in Vault for storage and access control purposes.

@davidfisher01
I would expect the user to be able to provision a new token without one existing already in its place via a new resource.  our API doesn't know who you are unless you send along an API token with the request (because the API serves a multi-tenant SAAS application).  So if getting a token from an un-authed context is your need then we simply cannot achieve this with our API architecture today (and honestly being able to arbitrarily provision API tokens without being auth'd is a massive security hole).
If you are ok with having to provision at least 1 API token manually and hand that to the terraform provider so that it can make additional API tokens then that is something we can get behind (though it gets complicated with RBAC scopes).  Unfortunately i have no idea when our API team would beable to get to that though.

Sorry, that is exactly what I meant. "f you are ok with having to provision at least 1 API token manually and hand that to the terraform provider so that it can make additional API tokens".

Ok @davidfisher01  - Thanks for all the info i've taken this back to our API product manager as a feature request.


Switch to `compilation-mode' after pytest process finishes

This makes the standard `compilation-mode' commands and keybindings
available.
Rebind "g" to `python-pytest-repeat'.
Closes #47.

oh this is a smart idea! 😍 it never occurred to me that a major mode change can be used for ‘running’ vs ‘finished’ states, with all benefits for error jumping etc

thank you for your quick feedback. I amended the commit!

🚢


New Indonesia translation: Describing the UI page

This is PR for translating the Describing the UI page
Issue #330
CHANGES

translate survey CTA on src/components/Layout/Page.tsx
translate header on src/components/Layout/Toc.tsx
translate you will learn component, and learn more component on src/components/MDX/MDXComponents.tsx
translate src/content/learn/describing-the-ui.md
adjust src/sidebarLearn.json

@mustafamilyas FYI, the layout translations are meant to be translated at the end, after all the page contents are translated. But since you already started ahead, let's continue with it!

Should we revert all changes except the MD files for now? It keep us to focus on the related content.

I see2, should I continue to translate the layout or can we leave this as it is?

@mustafamilyas Leave them as it is for now. Current focus is the documentation contents (i.e. everyting in content folder).

Should we revert all changes except the MD files for now @resir014? It keep us to focus on the related content.

Yep, I think it's better we do that. @mazipan @mustafamilyas

Should we revert all changes except the MD files for now @resir014? It keep us to focus on the related content.

Yep, I think it's better we do that. @mazipan @mustafamilyas

done ya 🙏 ,

I see 3 Approvals for this PRs. So, I rebase and merged
Thank you all


Accessibility Audit: Support admin user flows

Background
The SimpleReport team performs quarterly accessibility audits as a proactive approach to ensure our products comply with Section 508 of the Rehabilitation Act.
Action requested
Use Axe DevTools to perform an accessibility audit of the support admin user flows. Do the page scan as well as any relevant guided tests.
Pages to visit:

/admin/*

Use cases to test:

view support admin menu page
edit or verify org identity
add org admin
create new device
manage devices
org data access

Do NOT need to test any of the new support self-service admin pages. These have passed an accessibility audit as they were released in the last month and don't need to be re-scanned this quarter.
Acceptance Criteria
Full audit completed and tickets created for any accessibility violations.
Additional context
See ticket from previous audit #5772

Tickets created:

#6399
#6400
#6401
#6404
#6405


setup question

When I run setup.py, I find there is not requirements.txt.

You can copy this project to mmdetection。

You can copy this project to mmdetection。

Copy to mmdetection means?


TypeError: unsupported type for timedelta days component: NoneType

I'm getting an error when running deleterr on both the latest and develop tags.
2024-04-02 18:23:51 - INFO :: deleterr.py :: deleterr : Running version
2024-04-02 18:23:51 - INFO :: deleterr.py :: deleterr : Log level set to INFO
2024-04-02 18:23:51 - INFO :: config.py :: deleterr : Running in dry-run mode, no changes will be made.
2024-04-02 18:23:51 - INFO :: deleterr.py :: deleterr : Processing radarr instance: 'Radarr'
2024-04-02 18:23:51 - INFO :: media_cleaner.py :: deleterr : Processing library 'Movies'
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/app/app/deleterr.py", line 111, in <module>
    main()
  File "/app/app/deleterr.py", line 107, in main
    Deleterr(config)
  File "/app/app/deleterr.py", line 32, in __init__
    self.process_radarr()
  File "/app/app/deleterr.py", line 42, in process_radarr
    saved_space += self.media_cleaner.process_library_movies(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/app/media_cleaner.py", line 212, in process_library_movies
    movie_activity = self.get_movie_activity(library, movies_library)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/app/media_cleaner.py", line 58, in get_movie_activity
    return self.tautulli.get_activity(library, movies_library.key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/app/modules/tautulli.py", line 45, in get_activity
    min_date = self._calculate_min_date(library_config)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/app/modules/tautulli.py", line 65, in _calculate_min_date
    unwatched_threshold_date = datetime.now() - timedelta(
                                                ^^^^^^^^^^
TypeError: unsupported type for timedelta days component: NoneType

I guess I can't just add last_watched_threshold. I have to also add added_at_threshold.
Not sure why this is a requirement but it's working now.

It's not, I'll fix it soon! Thanks for the report
On Tue, 2 Apr 2024, 20:35 Douglas Parker, @.***> wrote:

I guess I can't just add last_watched_threshold. I have to also add
added_at_threshold.
Not sure why this is a requirement but it's working now.
—
Reply to this email directly, view it on GitHub
https://github.com/rfsbraz/deleterr/issues/96#issuecomment-2032959065,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAF4FHG56WM6RGT6DD554ILY3MCAJAVCNFSM6AAAAABFT4KPLSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZSHE2TSMBWGU
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Fixed and pushed, latest should reflect this now!


Timeouts on login screen

Hi,
Thank you so much for writing this!
I'm trying to get it to work on an Ubuntu VM, latest version and am getting timeouts on the #schwablmslogin locator.  I couldn't get this far until I changed the browser type to chromium instead of firefox, but now I'm stuck.  I've tried it multiple times on a Linux VM as well as in WSL and keep hitting the 30 second timeout.  I looked at the schwab website and the schwablmslogin iframe is still there.
Thanks,
Dave
Log:
2024-06-19T19:38:30.475Z  info:  retrieving account information
2024-06-19T19:38:30.477Z  debug:  performing HTTP GET request with authentication: https://client.schwab.com/api/PositionV2/PositionsDataV2
2024-06-19T19:38:30.477Z  debug:  authenticating request with options: {"loginIfRequired":true,"rememberDevice":true}
2024-06-19T19:38:30.477Z  info:  login required, attempting login
2024-06-19T19:38:30.478Z  debug:  initializing chromium browser with headless: true
2024-06-19T19:38:31.065Z  debug:  initializing new context with user agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
2024-06-19T19:38:31.115Z  debug:  initializing new page with viewport: {"width":1920,"height":1080}
2024-06-19T19:38:34.804Z  debug:  navigating to : https://www.schwab.com/
2024-06-19T19:38:35.733Z  debug:  waiting for login frame : #schwablmslogin
2024-06-19T19:39:05.738Z  info:  failed to retrieve account information: TimeoutError: page.waitForSelector: Timeout 30000ms exceeded.
Call log:

waiting for locator('#schwablmslogin') to be visible

2024-06-19T19:39:05.738Z  error:  Retrieving account information was not successful.
2024-06-19T19:39:05.738Z  error:  The attempt to retrieve account information produced the following error:
2024-06-19T19:39:05.738Z  error:  page.waitForSelector: Timeout 30000ms exceeded.
Call log:

waiting for locator('#schwablmslogin') to be visible
at /home/dcrook/node_modules/schwab-api/lib/session.js:268:29
at async withCleanErrors (/home/dcrook/node_modules/schwab-api/lib/logging.js:20:16)
at async Schwab.authenticate (/home/dcrook/node_modules/schwab-api/lib/session.js:61:34)

Hey, curious question. Is this a headless VM? If it is not a headless VM, can you try adding the headless: false option to the Schwab constructor to open the browser while it performs the authentication? It might make it a little more clear what's happening.
const schwab = new Schwab({
    username: 'your-username',
    password: 'your-password',
    headless: false,
});

Thank you for the quick response and the tip about headless: false!  I set headless: false and login fields are visible but program doesn't recognize them, even though I can see the id it's waiting on in the source.  Logging in manually through the launched browser works in WSL but not Ubuntu, but doesn't help the program as it's still waiting on the login fields.
WSL:
Successful login in browser outside of program.
Using headless=false in program opens browser, login fields visible and cursor is on userid.  Program never recognizes login fields and times out.
Logging into the browser started by the program with headless=false works, but program still times out waiting for login fields.
Ubuntu 24.04 VM:
Successful login in browser outside of program.
Using headless=false in program opens browser, login fields visible and cursor is on userid.  Program never recognizes login fields and times out.
Logging into the browser started by the program with headless=false doesn't work and displays "We're unable to authorize your access."


HA doesnt finish checking config before restart

System Health details

Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
after pasting in the config into a yaml file, HA doesnt finish checking the config before restart. The spinning icon never stops. Removing the config, it works as normal again.
Logging into terminal and forcing a reboot. fingers crossed.
EDIT: after forcing a reboot, the check config now works again. Maybe a full reboot was needed for the integration to settle?

platform: tgtg
email<EMAIL_ADDRESS>access_token: "xxx"
refresh_token: "xxx"
user_id: "xxx"
cookie: "xxx"
scan_interval: 900

Reproduction steps

Install TGTG via HACS
reboot
paste yaml config
...

Debug logs
-

Diagnostics dump

As edited in the issue, fixed after a reboot.


Facebook login v2

I now get errors on user ID (not email anymore).
Anything I need to change in code?

Fixed


3.x, trying to use custom strategy not "getting it".

TL;DR: How can I edit all of the exceptions $message property when they are thrown?

So, I'm trying to, honestly, simply override the message returned with each of the exceptions. I know I could do something nasty like edit the package directly but obviously that's never going to be proper.
What I did try doing was implement a CustomJsonStrategy, and copy the JsonStrategy, and all of the exceptions and Exception itself over verbatim (updating the namespaces of course) but in my custom strategy updated the namespaces for these copied files.
However, it's not that simple as my CustomJsonStrategy complains that Declaration must be compatible with StrategyInterface->getNotFoundDecorator(exception : \League\Route\Http\Exception\NotFoundException)
public function getNotFoundDecorator(NotFoundException $exception)
    {
        return function (ServerRequestInterface $request, ResponseInterface $response) use ($exception) {
            return $exception->buildJsonResponse($response);
        };
    }

Now, I know what I did (for what I was trying to do, simply change the $message for each of the exceptions), is probably nowhere near correct, but I am still trying to understand why exactly it doesn't work? I copied the contents of JsonResponse, Exception.php and all of the Exception/*.php files, (updating the namespacing correctly to point to these files) but it doesn't seem to work that way? Primarily confused as to why JsonStrategy works perfect (duh), but my copy/paste/update namespace's throws the errors? I imagine it's due to what the $route->setStrategy() method actually "does" but curious none-the-less.

To better answer your question it might be better if you explain why you want to change the messages or what the ultimate goal of changing them is?
Sent from my iPhone

On 26 Dec 2018, at 19:04, alturic<EMAIL_ADDRESS>wrote:
TL;DR: How can I edit all of the exceptions $message property when they are thrown?
So, I'm trying to, honestly, simply override the message returned with each of the exceptions. I know I could do something nasty like edit the package directly but obviously that's never going to be proper.
What I did try doing was implement a CustomJsonStrategy, and copy the JsonStrategy, and all of the exceptions and Exception itself over verbatim (updating the namespaces of course) but in my custom strategy updated the namespaces for these copied files.
However, it's not that simple as my CustomJsonStrategy complains that Declaration must be compatible with StrategyInterface->getNotFoundDecorator(exception : \League\Route\Http\Exception\NotFoundException)
public function getNotFoundDecorator(NotFoundException $exception)
{
return function (ServerRequestInterface $request, ResponseInterface $response) use ($exception) {
return $exception->buildJsonResponse($response);
};
}
Now, I know what I did (for what I was trying to do, simply change the $message for each of the exceptions, is probably nowhere near correct, but I am still trying to understand why exactly it doesn't work? I copied the contents of JsonResponse, Exception.php and all of the Exception*.php files, (updating the namespacing correctly to point to these files) but it doesn't seem to work that way? Primarily confused as to why JsonStrategy works perfect (duh), but my copy/paste/update namespace's throws the errors? I imagine it's due to what the $route->setStrategy() method actually "does" but curious none-the-less.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I’ll preface this with the fact that I do not recommend what you’re planning to do, it adds a layer of complexity that heavily outweighs any benefit, as any client shouldn’t care about the message.
That being said, it is doable with a custom strategy, I’m not at a computer for a few days though so will come back to you with an example when I am.
Sent from my iPhone

On 26 Dec 2018, at 20:28, alturic<EMAIL_ADDRESS>wrote:
With a question of "why", I feel like it's not something that's easily achievable/doable... ha. As to the "Why"?
Well, the "Not found" message, to me, would make more sense to have it be "Not a valid endpoint". I don't mean that response as facetious, or trying to be over simplistic or anything of that nature. Honestly though, changing the default messages is literally all I'm really looking to do though.
Don't get me wrong, it would be nice to be able to have said CustomJsonStrategy, and then be able to do something like throw new InvalidCredentialsException in a controller. See that's where I'm honestly confused. I'm fairly certain I can throw new ImATeapotException('I am not a teapot') and it would? overwrite the default $message associated with the ImATeapotException that the package has? If so, making new exceptions seems fairly simple, extend HttpException and you'd be good to go? However, editing, at the very least, the getNotFoundDecorator and getMethodNotAllowedDecorator seems to be "different".
Honestly, I thought that's what these decorators (in a proper implementation, not how I tried it, although I'm still very eager to know why copy/pasting these classes verbatim doesn't work the same way) allowed for? Changing the messages, or status codes associated with the packages included exceptions?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Let me ask this, and this is primarily due to reading other various questions (funnily enough, one revolving around 404's) where the answer was "Because this isn't a framework, it makes no assumptions about how the user should handle the 404.", how would you "intercept" the packages internal NotFoundException and use one of your own? I ask that with the logic being, using the packages included exceptions, they use 'status_code' for the status code. Almost, forcing you to use the same naming convention for your entire app then.
Again, not being facetious (I love the package), nor being overly obtuse or simplistic, but just trying to understand.

ApplicationStrategy exceptions just bubble out so you can catch those, JsonStrategy builds a response so not as simple as that but you’d extend the JsonStrategy and overload the decorator methods.
As for the body of a 404 response, it’s there for trivial reasons, you’d get the response code from the response status code itself, not the representation of that in the body.
Sent from my iPhone

On 26 Dec 2018, at 20:55, alturic<EMAIL_ADDRESS>wrote:
Let me ask this, and this is primarily due to reading other various questions (funnily enough, one revolving around 404's) where the answer was "Because this isn't a framework, it makes no assumptions about how the user should handle the 404.", how would you "intercept" the packages internal NotFoundException and use one of your own? I ask that with the logic being, using the packages included exceptions, they use 'status_code' for the status code. Almost, forcing you to use the same naming convention for your entire app then.
Again, not being facetious (I love the package), nor being overly obtuse or simplistic, but just trying to understand.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


Block found but not recognized by miningcore or api

Block was found for a coin that uses Ghostrider algorithm. However the miningcore and api never picked it up. Block reward was deposited into a pool wallet, but because it was never recognized it wasn't paid out to a miner. Fortunately in this case the miner is only me and I can manually transfer the balance but how do I investigate this? What could potentially cause this behaviour?

I'm looking at everything possible does my database look okay?
miningcore=# \dt
List of relations
Schema |      Name       |       Type        |   Owner
--------+-----------------+-------------------+------------
public | balance_changes | table             | miningcore
public | balances        | table             | miningcore
public | blocks          | table             | miningcore
public | miner_settings  | table             | miningcore
public | minerstats      | table             | miningcore
public | payments        | table             | miningcore
public | poolstats       | table             | miningcore
public | shares          | partitioned table | miningcore
public | shares_mecuai   | table             | postgres
public | shares_pgn11    | table             | postgres
public | shares_rtm1     | table             | postgres
public | shares_skyt1    | table             | postgres
(12 rows)

[2023-09-28 22:16:39.1660] [I] [skyt1] Submitting block 20040 [99d86e7fe2097cad8453bfd77632b8bd2fa13ade04647f391a1117c927ab0286]
[2023-09-28 22:16:39.2087] [W] [skyt1] Block 20040 submission failed with: bad-cb-payee
How to fix the (bad-cb-payee)
Does anyone know?

Bad-Xbox-payee means the wallet is not valid. Double check the wallet address you are using

Bad-cb-payee means the wallet is not valid. Double check the wallet address you are using

Thank you, Bad-cb-payee went away once I enabled the smartnodes in coins.json.
Now since then pool has found 5 blocks, the rewards were deposited into pools wallet.
But… the API has not picked those up, it shows 0 blocks found so paymentprocessor never kicked in.
I’m stuck not sure where to investigate API problem.

What coin are you mining?

Skytere right now, but it happens to any Ghostrider algo coins.

Anyone knows where I can look? I have perpool logging enabled, but no visible errors are showing up.

Bad-cb-payee means the wallet is not valid. Double check the wallet address you are using

I just checked the mining core database and blocks are not there. How do I make sure that the blocks are added to psql database?

Do the shares show in the database?

Do the shares show in the database?

Yes shares show up in (public | shares | partitioned table | miningcore ) and in ( public | shares_skyt1    | table | postgres ).

None of my databases have minereffort. Maybe that’s a provision for that
particular coin. I would try making it and see if it works
On Mon, Oct 2, 2023 at 3:37 PM cimam95 @.***> wrote:

Do the shares show in the database?
Found the following error, which appears right after the block is found.
[2023-10-01 02:35:53.1977] [W] [ShareRecorder] Retry 1 in 00:00:02 due to
Npgsql: PostgresException (42703: column "minereffort" does not exist
Do I create a new table in miningcore database called minereffort?
—
Reply to this email directly, view it on GitHub
https://github.com/oliverw/miningcore/issues/1719#issuecomment-1743641698,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAKRRMTBEGE3SQP5AYQT3X5MJZLAVCNFSM6AAAAAA5KCOLB2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBTGY2DCNRZHA
.
You are receiving this because you commented.Message ID:
@.***>

I did a quick google search and found this.
SQLSTATE=42703 means "An undefined column or parameter name was detected."
That error is expected because the current database table is missing the
corresponding column for the newly added attribute.Sep
On Mon, Oct 2, 2023 at 3:51 PM Randy Hasson @.***> wrote:

None of my databases have minereffort. Maybe that’s a provision for that
particular coin. I would try making it and see if it works
On Mon, Oct 2, 2023 at 3:37 PM cimam95 @.***> wrote:

Do the shares show in the database?
Found the following error, which appears right after the block is found.
[2023-10-01 02:35:53.1977] [W] [ShareRecorder] Retry 1 in 00:00:02 due to
Npgsql: PostgresException (42703: column "minereffort" does not exist
Do I create a new table in miningcore database called minereffort?
—
Reply to this email directly, view it on GitHub
https://github.com/oliverw/miningcore/issues/1719#issuecomment-1743641698,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAKRRMTBEGE3SQP5AYQT3X5MJZLAVCNFSM6AAAAAA5KCOLB2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBTGY2DCNRZHA
.
You are receiving this because you commented.Message ID:
@.***>

…

So I looked at the createdb.sql and the only time "minereffort" is mentioned is under "blocks" table.
CREATE TABLE blocks
(
id BIGSERIAL NOT NULL PRIMARY KEY,
poolid TEXT NOT NULL,
blockheight BIGINT NOT NULL,
networkdifficulty DOUBLE PRECISION NOT NULL,
status TEXT NOT NULL,
type TEXT NULL,
confirmationprogress FLOAT NOT NULL DEFAULT 0,
effort FLOAT NULL,
minereffort FLOAT NULL,
transactionconfirmationdata TEXT NOT NULL,
miner TEXT NULL,
reward decimal(28,12) NULL,
source TEXT NULL,
hash TEXT NULL,
created TIMESTAMPTZ NOT NULL,
CONSTRAINT BLOCKS_POOL_HEIGHT UNIQUE (poolid, blockheight, type) DEFERRABLE INITIALLY DEFERRED

);
But the error came from sharerecorder, I wonder under CREATE TABLE shares if I should add the minereffort.

Did you look in your database table for Blocks and see if minereffort is there?

Yup it’s there, so I’m really getting confused now😐
To be honest I’m not even sure that’s the reason why blocks are not being registered in the database.
could it be that missing something in daemon conf file? My pool and coin.json look exactly the same as the samples for Raptoreum.

Let me know if you figure it out. I will keep looking
On Mon, Oct 2, 2023 at 4:20 PM cimam95 @.***> wrote:

Yup it’s there, so I’m really getting confused now😐
To be honest I’m not even sure that’s the reason why blocks are not being
registered in the database.
could it be that missing something in daemon conf file? My pool and
coin.json look exactly the same as the samples for Raptoreum.
—
Reply to this email directly, view it on GitHub
https://github.com/oliverw/miningcore/issues/1719#issuecomment-1743698662,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAKRTSLUVLTH5NY4H4PLDX5MOXJAVCNFSM6AAAAAA5KCOLB2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBTGY4TQNRWGI
.
You are receiving this because you commented.Message ID:
@.***>

@MiningCryptoLive  I wonder if it's because I'm using @xiaolin1579 repo. I get the following errors after finding the block now.
[2023-10-03 22:14:24.3940] [I] [skyt1] Submitting block 23552 [1e5f7c0670573ff848636180b71208c40d34f57869e091b670f56a609532b5c1]
[2023-10-03 22:14:24.4153] [I] [skyt1] Daemon accepted block 23552 [1e5f7c0670573ff848636180b71208c40d34f57869e091b670f56a609532b5c1] submitted by ST1nKbvSChKhM98M3pKA5fwMqtgb92M3JY
[2023-10-03 22:14:24.5093] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)
[2023-10-03 22:14:26.5120] [W] [ShareRecorder] Retry 2 in 00:00:04 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)
[2023-10-03 22:14:30.5170] [W] [ShareRecorder] Retry 3 in 00:00:08 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)
[2023-10-03 22:14:38.5192] [W] [ShareRecorder] Fallback due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)
[2023-10-03 22:14:38.5235] [F] [ShareRecorder] Fatal error during policy fallback execution. Share(s) will be lost! System.IO.DirectoryNotFoundException: Could not find a part of the path '/app/recovered-shares.txt'.
at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func2 errorRewriter)    at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)    at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)    at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)    at Miningcore.Mining.ShareRecorder.OnExecutePolicyFallbackAsync(Context context, CancellationToken ct) in /home/max/miningcore/src/Miningcore/Mining/ShareRecorder.cs:line 128    at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func2 errorRewriter)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
at Miningcore.Mining.ShareRecorder.OnExecutePolicyFallbackAsync(Context context, CancellationToken ct) in /home/max/miningcore/src/Miningcore/Mining/ShareRecorder.cs:line 128
@xiaolin1579 any ideas why this might be happening?

Hey @MiningCryptoLive I haven't figured it out yet. Can you please show me your daemon conf file if you have any ghostrider coins? I got it to the point where there's only one error now [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271) which is normal based on @xiaolin1579 and his repository.
I believe I'm missing something in my daemon conf, as the blocks are not recorded in miningcore database.
Please let me know, thank you in advance. :)
Ps. I couldn't get original oliverw master repo working at all for ghostrider.

Let me know if you figure it out. I will keep looking
…
On Mon, Oct 2, 2023 at 4:20 PM cimam95 @.> wrote: Yup it’s there, so I’m really getting confused now😐 To be honest I’m not even sure that’s the reason why blocks are not being registered in the database. could it be that missing something in daemon conf file? My pool and coin.json look exactly the same as the samples for Raptoreum. — Reply to this email directly, view it on GitHub <#1719 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIAKRTSLUVLTH5NY4H4PLDX5MOXJAVCNFSM6AAAAAA5KCOLB2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBTGY4TQNRWGI . You are receiving this because you commented.Message ID: @.>

Are you sure there is a minereffort column? There is an "effort" column and there is a "mineeffort" column.

Do the shares show in the database?

Found the following error, which appears right after the block is found. [2023-10-01 02:35:53.1977] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist
Do I create a new table in miningcore database called minereffort?
Here are the Tables already in database:
                 List of relations

Schema | Name | Type | Owner --------+-----------------+-------------------+------------ public | balance_changes | table | miningcore public | balances | table | miningcore public | blocks | table | miningcore public | miner_settings | table | miningcore public | minerstats | table | miningcore public | payments | table | miningcore public | poolstats | table | miningcore public | shares | partitioned table | miningcore public | shares_mecuai | table | miningcore public | shares_rtm1 | table | miningcore public | shares_skyt1 | table | miningcore

These are tables and not columns of tables.  The "minereffort" an column of "block" table

@cimam95 Try remove insert to db from Blockrepository.cs

Do the shares show in the database?

Found the following error, which appears right after the block is found. [2023-10-01 02:35:53.1977] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist
Do I create a new table in miningcore database called minereffort?
Here are the Tables already in database:
                 List of relations

Schema | Name | Type | Owner --------+-----------------+-------------------+------------ public | balance_changes | table | miningcore public | balances | table | miningcore public | blocks | table | miningcore public | miner_settings | table | miningcore public | minerstats | table | miningcore public | payments | table | miningcore public | poolstats | table | miningcore public | shares | partitioned table | miningcore public | shares_mecuai | table | miningcore public | shares_rtm1 | table | miningcore public | shares_skyt1 | table | miningcore

These are tables and not columns of tables. The "minereffort" an column of "block" table
How did you export the database like that?

@cimam95 Try remove insert to db from Blockrepository.cs

Thank you, I removed it. Let's see what happens. :)

@xiaolin1579 Code was changed just like you suggested. Found a few more blocks after that but they are still not registering in the database :(

@xiaolin1579 Code was changed just like you suggested. Found a few more blocks after that but they are still not registering in the database :(

please copy the MC error log

@xiaolin1579 Code was changed just like you suggested. Found a few more blocks after that but they are still not registering in the database :(

please copy the MC error log

[2023-10-10 17:46:12.4393] [I] [skyt1] Submitting block 28358 [0a65c7b80f7ef4f98efd7ff30dc09de8e84d045d573ca7b66448f0da8adb4]
[2023-10-10 17:46:12.4574] [I] [skyt1] Daemon accepted block 28358 [0a65c7b80f7ef4f98efd7ff30dc09de8e84d045d573ca7b66448f0da8adb4] submitted by ST1nKbvSChKhM98M3pKA5fwMqtgb92M
[2023-10-10 17:46:16.7131] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)

Do the shares show in the database?

Found the following error, which appears right after the block is found. [2023-10-01 02:35:53.1977] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist
Do I create a new table in miningcore database called minereffort?
Here are the Tables already in database:
                 List of relations

Schema | Name | Type | Owner --------+-----------------+-------------------+------------ public | balance_changes | table | miningcore public | balances | table | miningcore public | blocks | table | miningcore public | miner_settings | table | miningcore public | minerstats | table | miningcore public | payments | table | miningcore public | poolstats | table | miningcore public | shares | partitioned table | miningcore public | shares_mecuai | table | miningcore public | shares_rtm1 | table | miningcore public | shares_skyt1 | table | miningcore

These are tables and not columns of tables.  Found a few more blocks after that but they are still not registering in the database :(

please copy the MC error log

[2023-10-10 17:46:12.4393] [I] [skyt1] Submitting block 28358 [0a65c7b80f7ef4f98efd7ff30dc09de8e84d045d573ca7b66448f0da8adb4] [2023-10-10 17:46:12.4574] [I] [skyt1] Daemon accepted block 28358 [0a65c7b80f7ef4f98efd7ff30dc09de8e84d045d573ca7b66448f0da8adb4] submitted by ST1nKbvSChKhM98M3pKA5fwMqtgb92M
[2023-10-10 17:46:16.7131] [W] [ShareRecorder] Retry 1 in 00:00:02 due to Npgsql: PostgresException (42703: column "minereffort" does not exist POSITION: 271)
miningcore=# SELECT * FROM blocks; id | poolid | blockheight | networkdifficulty | status | type | confirmationprogress | effort | transactionconfirmationdata | miner | reward | source | hash | created | minereffort ----+--------+-------------+-------------------+--------+------+----------------------+--------+-----------------------------+-------+--------+--------+------+---------+------------- (0 rows)

The "blocks" table looks correct....

@xiaolin1579 Any suggestions on what else I might try? The blocks are just not registering in the block database.

What repo are you using? Try using another repo or rebuild Miningcore. Maybe there was an error during the build or the repo you are using has changes that are affecting it

What repo are you using? Try using another repo or rebuild Miningcore. Maybe there was an error during the build or the repo you are using has changes that are affecting it

I had the same idea so I just built the original OliverW Master repo just now. I'm hoping I can close this thread soon :(

@MiningCryptoLive  when using OliverW Master repo I get the following error. Which I thought I have fixed already by enabling smartblocks in coins.json. I know you mentioned before to check the wallet address, which I know is good because it was working with Xiaolin579 repo.
[2023-10-11 17:29:46.2540] [I] [skyt1] Submitting block 29163 [969008d57f7525c0aa98056606229d6fd7941949bb050f2df2b0572635810172]
[2023-10-11 17:29:46.2874] [W] [skyt1] Block 29163 submission failed with: bad-cb-payee

You can try jon4hz/miningcore-foss and see if it works for you
On Wed, Oct 11, 2023 at 5:57 PM cimam95 @.***> wrote:

@MiningCryptoLive https://github.com/MiningCryptoLive when using
OliverW Master repo I get the following error. Which I thought I have fixed
already by enabling smartblocks in coins.json. I know you mentioned before
to check the wallet address, which I know is good because it was working
with Xiaolin579 repo.
[2023-10-11 17:29:46.2540] [I] [skyt1] Submitting block 29163
[969008d57f7525c0aa98056606229d6fd7941949bb050f2df2b0572635810172]
[2023-10-11 17:29:46.2874] [W] [skyt1] Block 29163 submission failed with:
bad-cb-payee
—
Reply to this email directly, view it on GitHub
https://github.com/oliverw/miningcore/issues/1719#issuecomment-1758605287,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAKRU6FFHR3C7FCF5YT2LX64I47ANCNFSM6AAAAAA5KCOLBY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@MiningCryptoLive  I tried john4hz repo and same thing:
core log:
[2023-10-11 18:55:44.5134] [I] [skyt1] Submitting block 29208 [d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce]
[2023-10-11 18:55:44.5450] [W] [skyt1] Block 29208 submission failed with: bad-cb-payee
Daemon debug log:
2023-10-11T22:55:44Z CGovernanceManager::UpdateCachesAndClean -- Governance Objects: 0 (Proposals: 0, Triggers: 0, Other: 0; Erased: 0), Votes: 0
2023-10-11T22:55:44Z ConnectBlock(SKYTERE): spork is off, skipping transaction locking checks
2023-10-11T22:55:44Z CSmartnodePayments::IsTransactionValid -- ERROR failed to find expected payee Si1M2P4rb9jLZG86CrA9ctWMC5C57MjDFi in block at height 29208
2023-10-11T22:55:44Z IsBlockPayeeValid -- ERROR: Invalid smartnode payment detected at height 29208: CTransaction(hash=ca3b47410d, ver=3, type=5, vin.size=1, vout.size=2, nLockTime=0, vExtraPayload.size=70)
CTxIn(COutPoint(0000000000000000000000000000000000000000000000000000000000000000,<PHONE_NUMBER>), coinbase<PHONE_NUMBER>2727650030000005020000000a4d696e696e67636f7265, nSequence=0)
CTxOut(nValue=500.00000000, scriptPubKey=76a914d59c03d3480e0635fb1dea88)
CTxOut(nValue=4500.00000000, scriptPubKey=76a9143dc764a74a764451f2d3c5dc)
2023-10-11T22:55:44Z ERROR: ConnectBlock(SKYTERE): couldn't find smartnode or superblock payments
2023-10-11T22:55:44Z InvalidChainFound: invalid block=d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce  height=29208  log2_work=43.61537935  date=2023-10-11T22:52:49Z
2023-10-11T22:55:44Z InvalidChainFound:  current best=5b04e8c24a239ff43f1ae767b8225db887f7bdee9c2bba99322f4e58de8e31f0  height=29207  log2_work=43.61537036  date=2023-10-11T22:52:24Z
2023-10-11T22:55:44Z ERROR: ConnectTip(): ConnectBlock d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce failed with bad-cb-payee (code 16)
2023-10-11T22:55:44Z InvalidChainFound: invalid block=d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce  height=29208  log2_work=43.61537935  date=2023-10-11T22:52:49Z

Looks like it has to do with being a smart node. Changes will need to be
made. Check with the devs of the project
On Wed, Oct 11, 2023 at 7:00 PM cimam95 @.***> wrote:

@MiningCryptoLive https://github.com/MiningCryptoLive I tried john4hz
repo and same thing:
core log:
[2023-10-11 18:55:44.5134] [I] [skyt1] Submitting block 29208
[d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce]
[2023-10-11 18:55:44.5450] [W] [skyt1] Block 29208 submission failed with:
bad-cb-payee
Daemon debug log:
2023-10-11T22:55:44Z CGovernanceManager::UpdateCachesAndClean --
Governance Objects: 0 (Proposals: 0, Triggers: 0, Other: 0; Erased: 0),
Votes: 0
2023-10-11T22:55:44Z ConnectBlock(SKYTERE): spork is off, skipping
transaction locking checks
2023-10-11T22:55:44Z CSmartnodePayments::IsTransactionValid -- ERROR
failed to find expected payee Si1M2P4rb9jLZG86CrA9ctWMC5C57MjDFi in block
at height 29208
2023-10-11T22:55:44Z IsBlockPayeeValid -- ERROR: Invalid smartnode payment
detected at height 29208: CTransaction(hash=ca3b47410d, ver=3, type=5,
vin.size=1, vout.size=2, nLockTime=0, vExtraPayload.size=70)
CTxIn(COutPoint(0000000000000000000000000000000000000000000000000000000000000000,
4294967295), coinbase
02187204412727650030000005020000000a4d696e696e67636f7265, nSequence=0)
CTxOut(nValue=500.00000000, scriptPubKey=76a914d59c03d3480e0635fb1dea88)
CTxOut(nValue=4500.00000000, scriptPubKey=76a9143dc764a74a764451f2d3c5dc)
2023-10-11T22:55:44Z ERROR: ConnectBlock(SKYTERE): couldn't find smartnode
or superblock payments
2023-10-11T22:55:44Z InvalidChainFound: invalid
block=d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce
height=29208 log2_work=43.61537935 date=2023-10-11T22:52:49Z
2023-10-11T22:55:44Z InvalidChainFound: current
best=5b04e8c24a239ff43f1ae767b8225db887f7bdee9c2bba99322f4e58de8e31f0
height=29207 log2_work=43.61537036 date=2023-10-11T22:52:24Z
2023-10-11T22:55:44Z ERROR: ConnectTip(): ConnectBlock
d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce failed
with bad-cb-payee (code 16)
2023-10-11T22:55:44Z InvalidChainFound: invalid
block=d68abc551c5c8e68bc0caada36d637fac12c4ac7e7041fef87a470763b483bce
height=29208 log2_work=43.61537935 date=2023-10-11T22:52:49Z
—
Reply to this email directly, view it on GitHub
https://github.com/oliverw/miningcore/issues/1719#issuecomment-1758660639,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIAKRTGTJVKJBPMNAMXIODX64QIXANCNFSM6AAAAAA5KCOLBY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@xiaolin1579 would you please be so kind to show me your Coins.json pool.json and daemon conf. How you have ghostrider coins setup?

@MiningCryptoLive @xiaolin1579 @Papiitoo Thank you guys so much for helping me, I really appreciate it. I figured it out finally and will be closing this issue.

@xiaolin1579 would you please be so kind to show me your Coins.json pool.json and daemon conf. How you have ghostrider coins setup?

coins.json

Could you please post what you had to do to resolve the issue for others to follow.


feat: Create DB Migration for ETL Tool monitoring tables

Description
Create monitoring tables (ETL_EXECUTION_LOG_HIST, ETL_EXECUTION_LOG and ETL_EXECUTION_MAP) to store interface executions of batch processes.
Refers to issue 35 of old spar-data-sync repo.
Changelog
New

Changed

Removed

How was this tested?

[ ] 🧠 Not needed
[ ] 👀 Eyeball
[ ] 🤖 Added tests

What gif/image best describes this PR or how it makes you feel?

Thanks for the PR!
Any successful deployments (not always required) will be available below.
Frontend
Backend
Oracle-API
Once merged, code will be promoted and handed off to following workflow run.
Main Merge Workflow

@marcionemec-daitan Backend deployment is failing with the message below.
2024-04-01 17:17:33.888 WARN  [main] org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer': Migration V29__create_etl_tool_monitoring_tables.sql failed
-----------------------------------------------------------
SQL State  : 42703
Error Code : 0
Message    : ERROR: column "last_run_ts" of relation "spar.etl_execution_map" does not exist
Location   : db/migration/V29__create_etl_tool_monitoring_tables.sql (/db/migration/V29__create_etl_tool_monitoring_tables.sql)
Line       : 40
Statement  : comment on column spar.ETL_EXECUTION_MAP.last_run_ts                is 'Last timestamp this interface was executed for batch execution'

oops, didn't see Derek's message, but yea same issue.
Also could you provide a link to this old repo's issue?  @marcionemec-daitan

Refers to issue 35 of old spar-data-sync repo.

Old repo issue link: https://github.com/bcgov/nr-spar-data-sync/issues/35

Old repo issue link: bcgov/nr-spar-data#46

I just saw that and migrated it here.
https://github.com/bcgov/nr-spar-data/issues/46


"Failed to read language files" error

Hey everyone,
Just got this installed and am trying to run "npm run major", but getting this error every time. The language files still have the default keys and I'm not aware anything is locking those files. Any ideas?
Thank you!

Can you provide some info of your environment? Windows 10? Linux?
Using some tool or from terminal?

I'm on OS X 10.12 running Node 8.5.0. I just installed iTerm and re-installed the files again. It seems to have compiled this time, oddly. I'm not sure what changed as I re-installed the files several times yesterday!
I'll keep an eye and post if it appears to break again. Thanks.

I have the same problem. I'm on OS X 10.10.5 running Node 8.5.0. aslo I use brackets for file editing.

I have the same problem when I run the command npm run android.I am blocked.What could be the solution of this problem.Thank you in advance.Je suis sur windows 10.La version de mon node est v8.9.1


Allow optimizers to alternate at arbitrary intervals

For GANs or similar approaches, we may want optimizer A to step every batch while optimizer B might step every k batches.
This feature will enable this behavior.
Approach still needs to be scoped out. Open to suggestions here.

First, when defining validation_end, instead of passing
return [torch.optim.Adam(self.parameters(), lr=0.02)],
they could try
optimizer = torch.optim.Adam(self.parameters(), lr=2.0)
optimizer.skip_batch = 1
return [optimizer]

I'm sure that whoever wants to use this skipping feature would be comfortable adding a few lines
To accommodate for this, whenever self.optimizers = model.configure_optimizers() is called in trainer.py, you could just add the following:
for optimizer in self.optimizers:
    try:
        optimizer.skip_batch = 0
    except AttributeError:
        optimizer.skip_batch = 0

Basically the first part is checking to see if the user manually defined the skip rate, and if not, just set it to 0(never skip)
Later on, when calling optimizer.step(), you can replace it with
if self.batch_nb % (optimizer.skip_batch + 1) == 0:
    optimizer.step()

I believe this should also work with schedulers as well.
But then again, I don't know that much about Pytorch.
Nevertheless, this project looks quite exciting and I hope I can provide some help!
On another note, why would you want to have this feature? If its so optimizer A can learn "faster" than B, wouldn't multiplying B's learning rate by 1/k so you fully take advantage of all of the gradients while having it optimize slower than A.

good suggestion, but I wonder how adding properties to the optimizer might affect loading, saving and training continuation.
It seems a bit hacky, so let's think of other alternatives as well? If this turns out to be the best way, then we can go with it.
I was thinking about maybe just allowing the configure_optimizers method to return another list with config stuff:
return [opt_a, opt_b], [sched_a], [{'skip_batch': 2}]
Something like that. But don't love this either haha.

I fail to understand how to implement GAN-related training scheme in pytorch-lightning. Can you give me some examples?

@wheatdog @sidhanthholalkere see #106 for discussion. #107 for changes to support this.
Would this work?

@wheatdog @sidhanthholalkere on master now. override optimizer_step to update any optimizer at arbitrary intervals.

docs here: https://williamfalcon.github.io/pytorch-lightning/Trainer/hooks/#optimizer_step

Hi, I think the following is related.
What if we want just to alternate optimizers during training step by step. I mean the cases when we for example use Adam for 5 epochs than SGD for other 5 epochs.
How could we prevent training_step which in that case has "optimizer_idx" argument from executing twice?

Is there a way to change the optimizer after n epochs ? I am trying by calling configure_optimizer and it changes the Lr value but scheduler is not working


Add Testimonials section

Description
Issue Title: Add Testimonials Section
Description:
The website currently lacks a dedicated Testimonials section to showcase user feedback and experiences. Adding this section will enhance credibility and trust among users by displaying positive reviews and testimonials.
The section should feature multiple testimonials with profile images, names, and short feedback, cycling automatically every few seconds. Additionally, side arrows should be included to allow users to navigate manually between testimonials.
Screenshots

Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[X] I'm a Hacktoberfest'24 contributor
[X] I am willing to work on this issue (optional)

@AnushkaChouhan25, as our website is not functioning correctly, there is no need to add testimonials at this time, and I don't want to include fake testimonials. Hope you understand. We will let you know if this needs to be added in the future.


ModuleNotFoundError: No module named 'social_django'

Followed the Sample Usage guide and this error came up while migrating the database.
Error Log:
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\__init__.py", line 401, in execute_from_command_line
    utility.execute()
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\site-packages\django\core\management\__init__.py", line 377, in execute
    django.setup()
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\site-packages\django\apps\registry.py", line 91, in populate
    app_config = AppConfig.create(entry)
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\site-packages\django\apps\config.py", line 90, in create
    module = import_module(entry)
  File "C:\Users\shvms\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'social_django'

Try to add social-auth-app-django library using pip
pip install social-auth-app-django
or you can found in this link

@shvms Can you confirm if this worked? Do you still have an issue?

@sprajosh yep


Can the executable size be made smaller

$ ls -lHSh /usr/bin/{awk,grep,mawk,rg} ~/.local/bin/frawk
-rwxr-xr-x. 1 user user  43M Sep 24 09:19 /home/user/.local/bin/frawk
-rwxr-xr-x. 1 root root 4.3M May 23 08:00 /usr/bin/rg
-rwxr-xr-x. 1 root root 747K Jan 24  2024 /usr/bin/awk
-rwxr-xr-x. 1 root root 175K Jan 21  2024 /usr/bin/mawk
-rwxr-xr-x. 1 root root 167K Jan 24  2024 /usr/bin/grep

frawk, when fully stripped, is still an order of magnitude larger than ripgrep, a similar Rust CLI program that is already an order of magnitude larger than traditional UNIX CLI tools. The large size gives the impression that the program is bloated, even more so when my benchmark shows that it is slower than mawk by some margin.

Compiling without llvm probably makes it a lot smaller. My frawk binary is 9.4M stripped and 17M unstripped.
I rarely see mawk being much faster than frawk (except for https://github.com/ezrosent/frawk/issues/98).
Although I guess it might be possible if you test on small files (as the overhead of compiling the awk script in case of frawk might be most of the runtime).
Do you have some example scripts?

How to build frawk without LLVM? Like this?
cargo +nightly install --path . --no-default-features

I've used frawk with all optimization levels and backends in my scripts in this repo, and with the exception of rg3.sh where it runs faster with frawk, but only on modern hardware (SSD instead of HDD), all versions are consistenly at least a second or two slower with frawk compared to mawk, so definitely a noticeable margin. (You could define a function mawk in benchmark.sh that calls frawk to make an in-place override to compare the results.) I haven't tried the comparison with the LumbrasGigaBase dataset though, where the files are much fewer in number and larger in size.

# Without LLVM, but with other recommended defaults $ cargo +nightly install --path . --no-default-features --features use_jemalloc,allow_avx2,unstable

The awk scripts that don't work, need to be reformatted (frawk parser does not accept all valid awk script yet):
-    mawk '{ ++count[$0] }
-          END {
-              for (i in count) split(i, r, "[-\"]") && a[r[2]] += count[i];
-              for (i in a) total += a[i];
-              print +total, +a["1"], +a["0"], +a["1/2"];
-          }'
-
+    frawk '{
+        ++count[$0]
+    }
+    END {
+        for (i in count) {
+            split(i, r, "[-\"]") && (a[r[2]] += count[i])
+        }
+        for (i in a) {
+            total += a[i]
+        }
+        print +total, +a["1"], +a["0"], +a["1/2"]
+    }'

The easiest way to reformat an awk script to one that frawk accepts, is to use gawk --pretty-print:
gawk --pretty-print=/dev/stdout '{ ++count[$0] }
          END {
               for (i in count) split(i, r, "[-\"]") && a[r[2]] += count[i];
               for (i in a) total += a[i];
               print +total, +a["1"], +a["0"], +a["1/2"];
           }'

{
	++count[$0]
}

END {
	for (i in count) {
		split(i, r, "[-\"]") && (a[r[2]] += count[i])
	}
	for (i in a) {
		total += a[i]
	}
	print +total, +a["1"], +a["0"], +a["1/2"]
}

Indeed for your repo, frawk seems slower than mawk.
 Nc3 d5 4. Nf3 Bg7 5. Qb3 dxc4 6. Qxc4 O-O 7. e4 Nc6
8. Be2 Bg4 9. Be3 Bxf3 10. Bxf3 e5 11. d5 Nd4 12. Bd1 b5 13. Nxb5 Nxe4 14.
O-O a6 15. Nc3 Nd6 16. Qd3 Qh4 17. g3 Qh3 18. Bxd4 exd4 19. Ne2 Qf5 20. Nf4
Rfb8 21. Qxf5 Nxf5 22. Nd3 Bh6 23. Re1 a5 24. Bg4 Nd6 25. Re2 a4 26. a3 Ra5
27. Rc2 Rxd5 28. Rxc7 Ra5 29. Bf3 Bg5 30. Rd1 Rc8 31. Rxc8+ Nxc8 32. h4 Bf6
33. Rc1 Nd6 34. Kf1 Be7 35. Ke2 Kf8 36. Rc7 Bf6 37. Kd2 h5 38. Ke2 Nf5 39.
Rc4 Nd6 40. Rb4 Ra6 41. Nc5 Ra7 42. Kd3 Rc7 43. Nxa4 Rc1 44. Nb6 Bg7 45. a4
Ra1 46. Nd7+ Ke8 47. Nc5 Ke7 48. Kc2 Rf1 49. Nd3 Ra1 50. Kb3 f5 51. Rb6 Bh6
52. Bd5 g5 53. Ra6 gxh4 54. gxh4 Rd1 55. Bc4 Rh1 56. a5 Rxh4 1-0

frawk seems to split eagerly on fields even if they are not used.
Setting field separator and just counting number of lines.
# mawk
❯ timeit mawk -F '"|-' '{ i++ } END { print i }' chess_data_master.head5000000.txt
50000000

Time output:
------------

  * Command: mawk -F "|- { i++ } END { print i } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:01.13 = 1.13 seconds
  * Elapsed CPU time:
     - User: 1.03
     - Sys: 0.09
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 291
  * Maximum resident set size (RSS: memory) (kiB): 2744
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

# frawk
❯ timeit frawk -F '"|-' '{ i++ } END { print i }' chess_data_master.head5000000.txt
50000000

Time output:
------------

  * Command: frawk -F "|- { i++ } END { print i } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:03.50 = 3.50 seconds
  * Elapsed CPU time:
     - User: 3.33
     - Sys: 0.16
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 3
     - Involuntarily (time slice expired): 40
  * Maximum resident set size (RSS: memory) (kiB): 9768
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

# Setting field separator in frawk to a non common symbol seemingly avoids this overhead: (newline)
❯ timeit frawk -F '\n' '{ i++ } END { print i }' chess_data_master.head5000000.txt
50000000

Time output:
------------

  * Command: frawk -F \n { i++ } END { print i } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:01.80 = 1.80 seconds
  * Elapsed CPU time:
     - User: 1.63
     - Sys: 0.16
  * CPU usage: 100%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 7
     - Involuntarily (time slice expired): 9
  * Maximum resident set size (RSS: memory) (kiB): 9808
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

# Setting field separator in frawk to a non common symbol seemingly avoids this overhead: (tab)
$ timeit frawk -F '\t' '{ i++ } END { print i }' chess_data_master.head5000000.txt
50000000

Time output:
------------

  * Command: frawk -F \t { i++ } END { print i } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:01.97 = 1.97 seconds
  * Elapsed CPU time:
     - User: 1.77
     - Sys: 0.19
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 4
     - Involuntarily (time slice expired): 70
  * Maximum resident set size (RSS: memory) (kiB): 9716
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

Setting field separator and just counting number of lines that contain "Result".
# mawk
❯ timeit mawk -F '"|-' '/Result/{ i++; } END { print i++ }' chess_data_master.head5000000.txt
2100248

Time output:
------------

  * Command: mawk -F "|- /Result/{ i++; } END { print i++ } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:02.47 = 2.47 seconds
  * Elapsed CPU time:
     - User: 2.28
     - Sys: 0.17
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 1
     - Involuntarily (time slice expired): 137
  * Maximum resident set size (RSS: memory) (kiB): 2864
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

# frawk
❯ timeit frawk -F '"|-' '/Result/{ i++; } END { print i++ }' chess_data_master.head5000000.txt
2100248

Time output:
------------

  * Command: frawk -F  |" /Result/{ i++; } END { print i++ } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:05.53 = 5.53 seconds
  * Elapsed CPU time:
     - User: 5.38
     - Sys: 0.14
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 6
     - Involuntarily (time slice expired): 51
  * Maximum resident set size (RSS: memory) (kiB): 9900
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

# Set newline as field separator in frawk. Some speed is regained, but matching Result is slower than mawk
❯ timeit frawk -F '\n' '/Result/{ i++; } END { print i++ }' chess_data_master.head5000000.txt
2100248

Time output:
------------

  * Command: frawk -F \n /Result/{ i++; } END { print i++ } chess_data_master.head5000000.txt
  * Elapsed wall time: 0:04.01 = 4.01 seconds
  * Elapsed CPU time:
     - User: 3.82
     - Sys: 0.18
  * CPU usage: 99%
  * Context switching:
     - Voluntarily (e.g.: waiting for I/O operation): 6
     - Involuntarily (time slice expired): 10
  * Maximum resident set size (RSS: memory) (kiB): 9864
  * Number of times the process was swapped out of main memory: 0
  * Filesystem:
     - # of inputs: 0
     - # of outputs: 0
  * Exit status: 0

Didn't know about --pretty-print, that's gonna be so useful!


Ensure split and merge handle bulk import and compaction metadata

Need to analyze code and write test to ensure that split and merge handle the following metadata from bulk import and compaction

loaded flags
selected file set
compaction completion set

On test was added in #4110

#4323 handle this issue for split. While working on the issue realized the problem was a bit broader than just bulk and compaction columns, realized that every tablet metadata column that exists needs to be considered in the split code.   Similar work still needs to be done for the merge code.


[Layout] Layout's lazy mode doesn't clear the screen

Affected hardware version
Bangle 2
Your firmware version
2v17
The bug
When I use the Layout module, with lazy set to true, it does not properly clear modified fields.
Here is example code that shows the behavior, modified from the Layout tutorial:
var layout = new Layout({
  type: "v",
  c: [{
    type: "txt",
    font: "20%",
    label: "",
    id: "count"
  }, ]
}, {
  lazy: true
});

// timeout used to update every second
var drawTimeout;

// number to show on screen
var count = 9;

// update the screen
function draw() {
  var d = new Date();
  // update time and date
  layout.count.label = count;
  count += 1;
  layout.render();
  // schedule a draw for the next minute
  if (drawTimeout) clearTimeout(drawTimeout);
  drawTimeout = setTimeout(function() {
    drawTimeout = undefined;
    draw();
  }, 1000);
}

// update time and draw
g.clear();
draw();

Within 2 updates, when it transitions from display 9->10->11, the bug appears:

It gets worse over time:

Am I missing something here about how lazy mode is supposed to be used?
Installed apps
No response

I see some apps are using Layout's update method, but this isn't talked about in the Layout tutorial.

Ahh - so I think the issue is that layout wants to lay out everything on the screen and figure out how much space to allocate to each thing. In the examples on http://www.espruino.com/Bangle.js+Layout we pre-populate the layout with placeholder strings, which are basically the maximum size we expect things to be.
But then (and we don't do this in the examples) we need to let Layout actually lay everything out - either by rendering with .render, or by just calling .update (which lays out but doesn't render).
Then when you just change the label and render, it's that area which gets cleared.
So for example something like this should work:
var Layout = require("Layout");
var layout = new Layout({
  type: "v",
  c: [{
    type: "txt",
    font: "20%",
    label: "----",
    id: "count"
  }, ]
}, {
  lazy: true
});
layout.update();

The issue in your code is that the first thing you do is set the label to 9 and then render, so layout assumes the size of the area is all that's needed to render a 9, and that's all it clears.
I'll update the docs

A font I'm using has variable width. I assume when you say maximum width, that is the maximum pixel width, not maximum character width?

Yes, it's the maximum space on the screen you think text will take up.
In the docs I'd added at https://github.com/espruino/EspruinoDocs/commit/8d4b022f52c03693c09ce95f302dbfddef80fc13 I mention that you can just use fillx:1 to make the area stretch across the whole screen, which would fix this without you needing a placeholder


ui: improve log dashboard

search and filter functionality

possibility to expadn all logs of all requests to have a better view on logs if not interested in logs of one single request


test code in the production path when built with enable-fips

Hi team,
I'm investigating right now an issue with an internal program which started to consume an order of magnitude more CPU when migrated from Centos 7 to AlmaLinux 9.
I was surprised to see this output in perf report when I managed to isolate the offending operation:

Checking the openssl source code, it seems like get_entropy has a special code path when FIPS is enabled (the RHEL9 RPM is, indeed, built with enable-fips):  https://github.com/openssl/openssl/blob/master/providers/implementations/rands/drbg.c#L201
And that code path uses multiple test-related functions in the production code path since https://github.com/openssl/openssl/commit/7f9e74403677a995ded00f070d84297401f6e3fd
Did I correctly evaluate the issue, or am I missing something?
Regards,
Radu

The FIPS 140 standards mandate some testing of the entropy source, that's what you've pointed at.  It's normal and expected.
The FIPS installation process also does some failure testing but this should only happen once.  I wouldn't expect to see the failure testing code executing in normal operation.  Moreover, OSSL_SELF_TEST_oncorrupt_byte() should be extremely lightweight and isn't according to your trace.  Something odd is going on here.  I'd suggest build with debug symbols so you get a better trace...

Thank you for orienting me on the correct path. With debug symbols active, it becomes clear that the time is actually spent in sa_doall.  OSSL_SELF_TEST_oncorrupt_byte is located just before sa_doall in memory in the Alma9 binary, so perf picked and showed the incorrect symbol. Compiling with -O0, revealed that most time is spent in X509_load_cert_crl_file_ex, which gives me a very good lead for investigating the increased CPU consumption.
Sorry for the noise. I'm closing the issue.


Pluralization issues with Volt::Task generator

volt g task hello

generates hello_tasks.rb (plural) but defines class HelloTask (singular) which causes a load error.
I will get to it here in a sec, but am posting this so other people know that it's a known issue being worked on.

I'm on it!

Fixed in #201 :-)


Updated

Added a reference to where the source article can be found.

I've added this link to the post.


Build failure on main: undefined reference to pthread_mutex_trylock

Describe the bug
New build fails with /iree/iree/base/internal/synchronization.c:253: undefined reference to `pthread_mutex_trylock'
To Reproduce

cd
git clone https://github.com/google/iree.git
cd iree
cmake -B ../iree-build/ -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja .
cmake --build ../iree-build/
Observe error

Additional context
I'm aware the problem might be caused by a misconfiguration/use of ninja, so I also attempted

rm -rf ../iree-build
cmake -B ../iree-build/ -DCMAKE_BUILD_TYPE=RelWithDebInfo .
cmake --build ../iree-build/
Observe error

But the error persisted.
Longer form of the error message:
[4239/4284] Linking C executable iree/sampl...simple_embedding/simple_embedding_vmvx_sync
FAILED: iree/samples/simple_embedding/simple_embedding_vmvx_sync
: && /usr/bin/cc -O2 -g -DNDEBUG -lm -lpthread iree/samples/simple_embedding/CMakeFiles/iree_samples_simple_embedding_simple_embedding_vmvx_sync.dir/device_vmvx_sync.c.o iree/samples/simple_embedding/CMakeFiles/iree_samples_simple_embedding_simple_embedding_vmvx_sync.dir/simple_embedding.c.o -o iree/samples/simple_embedding/simple_embedding_vmvx_sync  iree/samples/simple_embedding/libiree_samples_simple_embedding_simple_embedding_test_bytecode_module_vmvx_c.a  iree/base/libiree_base_base.a  iree/hal/libiree_hal_hal.a  iree/hal/local/libiree_hal_local_local.a  iree/hal/local/loaders/libiree_hal_local_loaders_vmvx_module_loader.a  iree/hal/local/libiree_hal_local_sync_driver.a  iree/modules/hal/libiree_modules_hal_hal.a  iree/vm/libiree_vm_bytecode_module.a  build_tools/third_party/flatcc/libflatcc_runtime.a  -lm  -lpthread  iree/modules/vmvx/libiree_modules_vmvx_vmvx.a  iree/hal/local/libiree_hal_local_local.a  iree/base/internal/libiree_base_internal_arena.a  iree/base/internal/libiree_base_internal_atomic_slist.a  iree/hal/libiree_hal_hal.a  iree/base/internal/libiree_base_internal_synchronization.a  iree/vm/libiree_vm_impl.a  iree/base/libiree_base_base.a && :
/usr/bin/ld: iree/base/internal/libiree_base_internal_synchronization.a(synchronization.c.o): in function `iree_mutex_try_lock':
/usr/local/google/home/jopra/iree/iree/base/internal/synchronization.c:253: undefined reference to `pthread_mutex_trylock'
collect2: error: ld returned 1 exit status
[4252/4284] Generating simple_embedding_test_bytecode_module_dylib_x86_64.vmfb
ninja: build stopped: subcommand failed.

What platform are you building on that does not have pthread_mutex_trylock? it's been in the POSIX pthreads spec since at least 2004.

It looks like you might be using gcc (system default usually)? You may have more success using clang:
sudo apt install cmake clang
export CC=clang
export CXX=clang++

Could check /usr/bin/cc --version also.

Yeah I'm confused since we can see the linker command has -lpthread in there (my first assumption was that the dep hadn't been declared correctly)

It could be a command ordering issue though? That would be https://github.com/google/iree/issues/5702. I thought we had fixed that with https://github.com/google/iree/pull/6253, but it looks like that was just for ldl

Remember: link libraries are order dependent. I think there is a missing
-lpthread on one of the base synchronization libraries.
On Fri, Jul 16, 2021, 8:53 AM Geoffrey Martin-Noble <
@.***> wrote:

It could be a command ordering issue though? That would be #5702
https://github.com/google/iree/issues/5702. I thought we had fixed that
with #6253 https://github.com/google/iree/pull/6253, but it looks like
that was just for ldl
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/iree/issues/6466#issuecomment-881548264, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYVAAVQJB25R5IN5SDJIDTYBIXHANCNFSM5AO4MF2Q
.

ahh:
https://stackoverflow.com/questions/2009625/undefined-reference-to-pthread-mutex-trylock
it does mention in there sometimes a pthread option needs to be passed during compilation as well due to stubs.
We currently add -lpthread just to linkopts:
https://github.com/google/iree/blob/75d4bb8b1cf4402d522f4152d6c26c77a2e0e90f/build_tools/cmake/iree_copts.cmake#L279
I thought we had a PR that changed this to using the cmake FindThreads which probably would handle it for us.

This one should have a dep on pthread: /usr/bin/ld:
iree/base/internal/libiree_base_internal_synchronization.
a(synchronization.c.o)
On Fri, Jul 16, 2021, 8:54 AM Stella Laurenzo @.***>
wrote:

Remember: link libraries are order dependent. I think there is a missing
-lpthread on one of the base synchronization libraries.
On Fri, Jul 16, 2021, 8:53 AM Geoffrey Martin-Noble <
@.***> wrote:

It could be a command ordering issue though? That would be #5702
https://github.com/google/iree/issues/5702. I thought we had fixed
that with #6253 https://github.com/google/iree/pull/6253, but it looks
like that was just for ldl
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/iree/issues/6466#issuecomment-881548264, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYVAAVQJB25R5IN5SDJIDTYBIXHANCNFSM5AO4MF2Q
.

all libraries link with -lpthreads (it's added to IREE_DEFAULT_LINKOPTS) - the issue is that they aren't compiling with it

Repeating myself from previous issues: -lpthread is not a link option but a
lib. Link opts get added before the library. Link libs get added after,
allowing them to resolve the undefined symbols properly.
This gets done wrong frequently and due to the ways that command lines get
constructed, can appear to be working but it's actually unstable
On Fri, Jul 16, 2021, 8:57 AM Ben Vanik @.***> wrote:

all libraries link with -lpthreads (it's added to IREE_DEFAULT_LINKOPTS) -
the issue is that they aren't compiling with it
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/iree/issues/6466#issuecomment-881551021, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYVADFY2VE5GHYX2HLOGDTYBJHBANCNFSM5AO4MF2Q
.

But you may be right that depending on cmake's Threads::Threads in the base
synchronization library should be the most robust way to go.
On Fri, Jul 16, 2021, 9:02 AM Stella Laurenzo @.***>
wrote:

Repeating myself from previous issues: -lpthread is not a link option but
a lib. Link opts get added before the library. Link libs get added after,
allowing them to resolve the undefined symbols properly.
This gets done wrong frequently and due to the ways that command lines get
constructed, can appear to be working but it's actually unstable
On Fri, Jul 16, 2021, 8:57 AM Ben Vanik @.***> wrote:

all libraries link with -lpthreads (it's added to IREE_DEFAULT_LINKOPTS)

the issue is that they aren't compiling with it

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/iree/issues/6466#issuecomment-881551021, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYVADFY2VE5GHYX2HLOGDTYBJHBANCNFSM5AO4MF2Q
.

I thought we had a PR that changed this to using the cmake FindThreads which probably would handle it for us.

Here is that PR, which had some unresolved issues: https://github.com/google/iree/pull/6258

Building with clang fixed it (I can now build with ninja quite quickly). Thank you!

Glad you found something that worked :-) I'm going to leave this closed, but only because I think it's a dupe of #5702. This is definitely something we should fix.


Feature request/issue: destroy method

if I init nanoscroller, then remove its div contents ($(".nano").html("");), then fill it again and init nanoscroller again, it fails(without any error), I suppose that if there was a destroy method which I could call along with contents removing, it should work fine..
example here http://jsfiddle.net/chU2N/

Hello James, any approximate date when this could be fixed.. is it even an issue, or I'm just doing something wrong?

@fxck , terribly sorry for the late reply..
To answer your question, your content must be placed under .content element not .nano. So instead of $('.nano').html(); should be $('.nano .content').html();

it always is under the content element, check that fiddle example again..

I noticed that your HTML template was:

It should be:

Also, you were adding the .content layer dynamically and appending it to the .nano div layer. You only need to add new content on the .content child element because it's where the scrolling div implements.
Here's a working example. http://jsfiddle.net/Vupnp/
Hope it works for you.

thanks @robertjf


queue.py  Add Python Queue

Queue Data Structure Is Implemented In This Program Queue Is A DataStructue Which Follows FIFO ,Which Means First In First Out Which Means Elements Entered First Get Removed First ,Created Using Menu Based
Closes https://github.com/NITSkmOS/Algorithms/issues/55
By submitting this pull request I confirm I've read and complied with the
below declarations.

[x] I have read the Contribution guidelines and I am confident that my PR reflects them.
[x] I have followed the commit guidelines for this project.
[x] My code follows the standard code structure.
[x] This pull request has a descriptive title. For example, {Tag}: Add {Algorithm/DS name} [{Language}], not Update README.md or Added new code.
[x] This pull request will be closed if I fail to update it even once in a continuous time span of 7 days.
[x] This pull request shall only be reviewed and merged once all the checks passes. No maintainer or supporter shall be obliged to review it before this condition is met.
[x] I have mentioned the issue number correctly (with hyperlink) in this pull request description.

After you submit your pull request, DO NOT click the 'Update Branch' button.

Changed 😄

You just created one extra commit.
Please Squash both commits into one. http://api.coala.io/en/latest/Developers/Git_Basics.html#squashing-your-commits

at last done 😀

Fixed The indentation

@sangamcse rebase

Hey! I'm GitMate.io! This pull request is being rebased automatically. Please DO NOT push while rebase is in progress or your changes would be lost permanently :warning:

Automated rebase with GitMate.io was successful! :tada:

@SabariVig https://github.com/NITSkmOS/Algorithms/pull/84#commitcomment-30734910 fix the commented issue and Update the README. Also, before changing, go through https://github.com/NITSkmOS/Algorithms/blob/master/GIT_BASICS.md#follow-up

The assignee is no more responding.


Improve rationale for [com.google.fonts/check/metadata/match_weight_postscript]

Splitting #2872 into individual Issues for each Fail
Observed behaviour
The Fail was reported after FB checks performed from DIspatcher. The message for the FAIL (below) doesn't offer a clear explanation of what could be the cause.
FAIL
METADATA.pb: Mismatch between postScriptName ("Varta-Light") and weight value (400). The name must be ended with "Regular" or "Italic".

Expected behaviour
Having a more clear or explanatory rationale on what is happening and how to proceed.
Related to https://github.com/googlefonts/gftools/issues/200
Resources and exact process needed to replicate
Link to the Dispatcher Fontbakery results
Link to Last Cl FB QA folder
Upstream https://github.com/vv-monsalve/Varta/tree/QA-VartaST

This was reported two years ago. The above-linked files no longer exist. So closing this here.


Unable to build with CC="clang -std=gnu99"

STR:
Build some crate using cc-rs, using environmental variable CC="clang -std=gnu99". E.g. run the following commands:
mkdir /tmp/my-project
cd /tmp/my-project
cargo init
echo libloading = \"0.5\" | tee -a Cargo.toml
CC="clang -std=gnu99" cargo build

EXPECTED RESULTS: Build success.
ACTUAL RESULTS: Build error with the following output:
error: failed to run custom build command for `libloading v0.5.0`
process didn't exit successfully: `/tmp/my-project/target/debug/build/libloading-58cd8ebbf12e35d8/build-script-build` (exit code: 101)
--- stdout
cargo:rustc-link-lib=dl
TARGET = Some("x86_64-unknown-linux-gnu")
OPT_LEVEL = Some("0")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CC_x86_64-unknown-linux-gnu = None
CC_x86_64_unknown_linux_gnu = None
HOST_CC = None
CC = Some("clang -std=gnu99")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CFLAGS_x86_64-unknown-linux-gnu = None
CFLAGS_x86_64_unknown_linux_gnu = None
HOST_CFLAGS = None
CFLAGS = None
DEBUG = Some("true")
running: "clang -std=gnu99" "-O0" "-ffunction-sections" "-fdata-sections" "-fPIC" "-g" "--target=x86_64-unknown-linux-gnu" "-Wall" "-Wextra" "-o" "/tmp/my-project/target/debug/build/libloading-823a806b14f98686/out/src/os/unix/global_static.o" "-c" "src/os/unix/global_static.c"

--- stderr
thread 'main' panicked at '

Internal error occurred: Failed to find tool. Is `clang -std=gnu99` installed?

I run into this when building mozilla-central, if I have "export CC=clang" in my environment (e.g. set via .bash_aliases), as discussed in https://bugzilla.mozilla.org/show_bug.cgi?id=1445528 .  Some internal mozilla build tool appends "-std=gnu99" to $CC before we compile libloading and so cc-rs ends up seeing CC=" clang -std=gnu99"

Had this improved as of 1.0.8?

Nope, I still get same results from my STR in the initial comment here (after "Downloading cc v1.0.8" in the terminal output).

Alex told me that I reported the same bug here: https://bugzilla.mozilla.org/show_bug.cgi?id=1447660

@dholbert or @sylvestre can y'all try out master and see if that works?

Seems to work! My STR to confirm that it was working:
mkdir /tmp/my-project
cd /tmp/my-project
cargo init

echo "libloading = \"0.5\"
[patch.crates-io]
cc = { git = 'https://github.com/alexcrichton/cc-rs' }
" | tee -a Cargo.toml

CC="clang -std=gnu99" cargo build

I tried a few trickier CC values too, to combine this with #297, #298, and #299:
CC="ccache clang -std=gnu99" and CC=" icecc clang -std=gnu99", and I didn't hit any errors.

Hopefully this will fix https://bugzilla.mozilla.org/show_bug.cgi?id=1445528 , once we pull in the updated version of this library!
(I'm not actually sure how to test this in the context of mozilla-central.  But I'm happy to give that a shot if it's easy. It looks like our copy of this library lives at https://hg.mozilla.org/mozilla-central/annotate/tip/third_party/rust/cc/Cargo.toml#l15 and is at version 1.0.4 right now, so it's a bit out of date.)

Ok thanks for checking! I've published 1.0.9


Indent Colorization

Please add Indent Colorization feature like you did with bracket pair.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

https://marketplace.visualstudio.com/items?itemName=oderwat.indent-rainbow

I think this issue must probably be focused on enabling colors for indent vertival lines rather than background of indent spaces:

It is strange that this vertical lines are colored only in languages with opening and closing symblos ({}, []). For example in will be veeerry useful in Python and YAML files

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Exception error when checking "Enable Audio" - Fresh Win10 install

https://pastebin.com/TB1YBFCd
Windows 10 Education N 64bit

Do you have other instance running?

Hey, sorry about the issue i posted. Turns out Windows 10 Edu  N is missing
some core features that many media players and applications such as your
own webmconverter require. The "N" editions were made to comply with German
law and don't have Windows Media Player, Skype, and are missing some
important .dll dependencies commonly used apparently.
I installed Media Feature Pack and it now works perfectly. It's my fault
really, but it may be interesting for you to know about this N thing...
El vie, 4 feb 2022 a las 22:07, セバスチャン @.***>)
escribió:

Do you have other instance running?
—
Reply to this email directly, view it on GitHub
https://github.com/argorar/WebMConverter/issues/7#issuecomment-1030349697,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIGV2VCSA2ZBOZCBJWLSGJTUZQ5Y5ANCNFSM5NQUS77A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Thanks for the info. I will close the issue.


CARDS-2250: Questionnaire designer: adding a question without text leads to a bad state

I'm not sure this is what we want, questions without text. I was thinking of making the field mandatory in the UI. We already have support for requiring that the user fills in the question name.

This (allowing questions without text) is what I asked for. There is a use case for computed questions that act like information cards with dynamic content, for example in CPESIC.


Reusing existing ALB for API endpoint

Extracted from https://github.com/kubernetes-incubator/kube-aws/issues/608#issuecomment-300951796
Anyone is interested (to work) on it after #608 is sorted out?

Closing this as wontfix - ALB by definition won't add any value over ELB as an API endpoint load balancer! See https://github.com/kubernetes-incubator/kube-aws/issues/608#issuecomment-312750742


Automatic HTTP Authentication Problems

Hey there!
When I make a request to a controller using REST Client with HTTP Basic Authentication (from the Auth tab in REST Client), all of my methods (except those that explicitly require_login_from_http_basic) fail with the not_authenticated callback. The README mentioned automatic HTTP Basic Authentication and I was wondering how and where that takes place. Is there a need to append another header like the X-Session-ID to the request?
Thanks,
Robert

Hmm,
just guessing here...
Does the client respond to the set-cookie header from the server?
The only headers used are something like "authorize".
No x session ID.
can you paste the requests and responses?
Sent from my iPad
On Oct 23, 2011, at 5:31 PM, Robert<EMAIL_ADDRESS>wrote:

Hey there!
When I make a request to a controller using REST Client with HTTP Basic Authentication (from the Auth tab in REST Client), all of my methods (except those that explicitly require_login_from_http_basic) fail with the not_authenticated callback. The README mentioned automatic HTTP Basic Authentication and I was wondering how and where that takes place. Is there a need to append another header like the X-Session-ID to the request?
Thanks,
Robert
--
Reply to this email directly or view it on GitHub:
https://github.com/NoamB/sorcery/issues/102

Here is a CloudApp link to a screenshot of my REST Client: http://cl.ly/BCZS. It shows the GET Request, response headers, and an HTTP response of 403 forbidden (I've programed this in so that I didn't get HTML returned telling me to login when the not_authenticated callback is called). Please advise that, since cancan is being used for role-based authorization, require_login is not being called in the controller depicted in the REST Client. Could this be the problem in itself?

My bad, require_login is in my Application Controller instead.


Version selection not working on macOS Safari

with Safari 12.1.1 (146<IP_ADDRESS>.1) on macOS 10.14.5.

/kind bug
I am seeing the same issue

/priority important-soon

/reopen

/remove-lifecycle rotten

/reopen

It was fixed. This case is closed.


[FEATURE REQ] Make the Spring Cloud Azure 6.0.0 beta 3 available in Spring Initlizar

Context
As the Spring Boot 3.0.0.RC1 is available at https://start.spring.io/, the Spring Cloud Azure 6.0 beta 3 should be also available.
Goal
Generate a version number that adapts to the Spring boot version. For example, when Spring Boot 2.7.2 is selected, it is adapted to Spring Cloud Azure 4.x version, and if Spring Boot 3.0.0 RC1 version is selected, and it is adapted to Spring Cloud Azure 6. 0 beta 3 version number.

Opened issue: https://github.com/spring-io/start.spring.io/issues/1026

Now 6.0.0-beta.3 is available on start.spring.io.


Issue 364

Remove disabled flag when generating function.json, resolve issue #364.

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@fe29f98). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             develop     #377   +/-   ##
==========================================
  Coverage           ?   53.78%
==========================================
  Files              ?       67
  Lines              ?     1876
  Branches           ?      211
==========================================
  Hits               ?     1009
  Misses             ?      800
  Partials           ?       67

Continue to review full report at Codecov.

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


Add a way to read current index

This project is great and shows a lot of promise, but currently, there is no way to read the current index of the sheet and wanted to propose a feature to read this state
Perhaps we can add a function prop onIndexChange(prev, current) that the user would pass in that would get called anytime the current index changes.

Hello,
I find it a little bit tricky because this change is not a discrete change.
 IS it on start snapping? Or ending? Or when we start assuming that this interaction leads to the index's change?
I think you need to determine it on yourself using callbackNode. It has information about position and then you may get the information you want in a way you want. 😄

I'd be happy with just onChange event that fires when the bottom sheet moves from one snap point to the other.

I get why this is difficult because there are in-between states, but I wonder if something like onSnapLeave and onSnapComplete would be appropriate... so when dragging away from a snap you get the leave event and when it settles at a snap point, you get the completion event...
I know that may still not be trivial but it's a thought.


The parameter name shows incorrectly after pasting Chinese Four Ext chars "𠀀𠀁𠣶𤆐𥽠𪛕𪛖" in VSCode

OS: M1 (Pro)
Build Version: V0.15.10
Language: Chinese Four Ext chars
Repro Steps:

Open a template file in VSCode.
Focus a parameter -> F2 -> Paste Chinese Four Ext chars "𠀀𠀁𠣶𤆐𥽠𪛕𪛖".
Check whether the parameter name shows correctly.

Expect:
The parameter name shows correctly.
Actual:
The parameter name shows incorrectly.

More Info:

The Chinese Four Ext chars shows consistently between the code lens and code.

This issue doesn't reproduce for other languages.

VSCode bug.  Entered here: https://github.com/microsoft/vscode/issues/186452