osstotalsoft / nodebb Goto Github PK
View Code? Open in Web Editor NEWNodeJs components
License: MIT License
NodeJs components
License: MIT License
With higher node version (mine is v14.15.1), I got this warning "Accessing non-existent property 'splice' of module exports inside circular dependency". This warning appears in messageHandler file.
nodebb/packages/knex-filters/src/dbSchema/mssql.js
Lines 3 to 15 in 25355f7
I think you should use information_schema.tables
(or better yet information_schema.columns
and use a distinct
) because:
sys.tables
does not give you views.information_schema
is more generic and can be found on other servers (like PostgreSQL), unlike sys.tables
Should throw exception or stop msg host on connection closed
When installing the messagebus package you get the following warning:
warning @totalsoft/messaging-host > @totalsoft/message-bus > [email protected]: This library will not receive further updates other than security fixes.
We recommend using @grpc/grpc-js instead.
See: https://github.com/grpc/grpc-node/tree/master/packages/grpc-js
One should be able to specify a global query filter providing the following info:
The filter should call the appropriate hook for the coresponding sql statements
Hello,
Not all cases are covered, it looks like knex.count(...)
is not triggered on onSelect
leaving us not having the global filter (tenant id) added in our counts.
Maybe a default
and handle it like it's a select for now until we catch all the methods.
Found a new oversite on nodebb/packages/knex-filters/src/queryBuilder.js
.
If I build a query with any kind of "outer join" the library will automatically add a "where TenantId" clause. But the purpose of "outer join" is to show data from a table even if the joined table returns null
. If the join table shows null
on all columns that means t.TenantId
will also be null
and our forced where
clause will remove the row.
There is a quick fix that might work, to just put where [...] and (tenantId is null or tenantId='value') [...]
. Or we can go with a more sophisticated fix that will notice the outer joins
and put the tenant restriction in the on
space like: [...] from A left join B on A.id = B.idOfA and B.tenantId = 'value' [...]
this will bring in the correct data. But you have left, right and full outer join and all cases must be covered.
When used from message-host, at some point the subscriptions become stale, they stop receiving messages from nats.
There are no relevant errors or logging info available.
The message-bus should log the error events coming from both transport connection and transport subscription. Should also verify other unhandled transport events.
When SubscriptionOptions.STREAM_PROCESSOR is set the underlying subscriptions options should be set:
See https://github.com/nats-io/stan.js/blob/master/examples/stan-worker.js
The underlying transport options should be overridden through environment variables
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.