These are chat archives for reactioncommerce/reaction

25th
Apr 2018
image.png
Yanlin Li
@yanlinl
Apr 25 2018 02:26
@zzh1234567 The code was commented. It is a bug from meteor. If you look at the line before you have the red rectangle, it was from .meteor.
I believe this is caused by software not compatible. If we have the right software, we will be able to get pass this bug.
Andrew Lee
@andrewksl
Apr 25 2018 03:07
Hi, all. I'm new to both meteor and reaction commerce, but I was wondering if anyone could point me in the right direction for finding a list of DDL publications?
I couldn't find anything in the documentation about what endpoints are available and what they do
zzh1234567
@zzh1234567
Apr 25 2018 03:11
i dont think this is a bug from meteor. I think reaction remove the imports/plugins/core/collections, but swag shop uses these files. I think it is ok to use simple-schema in swag shop plugin.
@yanlinl I will try
I think swag shop is not compatible with Reaction v1.10.0 and later
Yanlin Li
@yanlinl
Apr 25 2018 03:19
@zzh1234567 let me know if it works
Yanlin Li
@yanlinl
Apr 25 2018 03:26
I will revert back v1.9 see if it works.
Akarshit Wal
@Akarshit
Apr 25 2018 09:40
@emontesg The AddressBookComponent was recently updated(by me). If you are seeing any error it would be very helpful if you get file that here(https://github.com/reactioncommerce/reaction/issues/new)
@zzh1234567 The plugin was modified to be compatible with release 1.10 here(reactioncommerce/reaction-swag-shop#51)
@zzh1234567 We have just released v1.11 are you sure you are not on v1.11. If yes, it would make sense to open an issue.
zzh1234567
@zzh1234567
Apr 25 2018 11:19
@Akarshit : I used v1.11 . v1.11 is not compatible with swag shop plugin
@Akarshit I will test again.
snehalps
@snehalps
Apr 25 2018 11:46
hi every one ...can any one tell me how many stores can be add with market place functionality?
Ishmael Nkosikhona Sibisi
@cyber-claws
Apr 25 2018 12:09
Hi all, Can someone please give an example of the API call (static) getTagIds(state) → {Array} under Core here. is am mostly interested in the state argument. Thanks for the help :smile:
Patrick Newell
@pnewell4_twitter
Apr 25 2018 14:13
@andrewksl I don't know whether there is documentation for them, but if you search the repo for "Meteor.publish" you will find all of the publications (https://github.com/reactioncommerce/reaction/search?q=%22Meteor.publish%22&type=Code)
@cyber-claws it looks like getTagIds is a little over-complicated. state is an object that is expected to have a key tags, which contains your array of tag objects. most places in code that use is simply do something like this:
const tags = sourceOfTags();
const tagIds = getTagIds({ tags });
Patrick Newell
@pnewell4_twitter
Apr 25 2018 14:18
@snehalps I don't believe there is a limit to the number of stores in marketplace
snehalps
@snehalps
Apr 25 2018 14:18
@pnewell4_twitter thank you :)
Patrick Newell
@pnewell4_twitter
Apr 25 2018 14:21
@andrewksl beyond the publications, there are a ton of methods which are exposed to the client. Many of them take care of the filtering of products, or accessibility of data server-side, so you don't have to think about it client-side (also a security features). Scan the code for "Meteor.methods" for a complete list: https://github.com/reactioncommerce/reaction/search?utf8=%E2%9C%93&q=%22Meteor.methods%22&type=Code
jiayimu
@jiayimu
Apr 25 2018 15:28
Hi guys. I just updated my reaction commerce v1.10.0 to v1.11.0 However, when I run the reaction, I keep getting a warning message ' WARN Reaction: No shopId, waiting one second...' Does anyone have the same issue?
Daniel Honig
@dhonig
Apr 25 2018 16:25
After building the latest Dockerfile with 4.0.2dev as ➞ docker build . --build-arg TOOL_NODE_FLAGS="--max-old-space-size=4096"
I'm still getting the FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
Patrick Newell
@pnewell4_twitter
Apr 25 2018 17:02

@aldeed or @zenweasel do you see these errors when running npm run test:unit?:

 FAIL  imports/plugins/core/graphql/server/resolvers/xforms/ramda-ext.test.js
  ● Test suite failed to run

    [BABEL] .../reaction/imports/plugins/core/graphql/server/resolvers/xforms/ramda-ext.test.js: Requires Babel "^7.0.0-beta.41", but was loaded with "7.0.0-beta.38". You'll need to update your @babel/core version. (While processing: ".../reaction/node_modules/@babel/preset-env/lib/index.js")

babel is pegged to "7.0.0-beta.38" in package.json. did you have to update your local environment to allow tests to run?

Daniel Honig
@dhonig
Apr 25 2018 17:03
@pnewell4_twitter I just created a brand new app and ran that command
no issues
Patrick Newell
@pnewell4_twitter
Apr 25 2018 17:03
hmm. ok, thanks
also, hi! been a while
Daniel Honig
@dhonig
Apr 25 2018 17:04
same babel version
hi, yes been keeping busy and was out for knee surgery for a bit
Patrick Newell
@pnewell4_twitter
Apr 25 2018 17:05
ok, I guess I have to figure out what is trying to force 7.0.0-beta.40.
sorry to hear it... you back on your feet?
Daniel Honig
@dhonig
Apr 25 2018 17:05
yup. recovering
Patrick Newell
@pnewell4_twitter
Apr 25 2018 17:09
cool. glad to hear it.
you mind telling me which version of node you are running? node -v
Daniel Honig
@dhonig
Apr 25 2018 17:10
8.9.0 for local development
8.9.4 in my containers
using ASDF as my nodejs version manager...works well
Patrick Newell
@pnewell4_twitter
Apr 25 2018 17:35
thanks Daniel. after a bunch of rm -rf node_modules/ && meteor npm install's I'm back in business
Daniel Honig
@dhonig
Apr 25 2018 18:02
@pnewell4 was going to suggest that. That is pretty much the "Reboot" switch
Loan Laux
@loanlaux
Apr 25 2018 18:03
Hi all! I'm getting this on a Reaction instance with about 1,700,000 products loaded. I understand Reaction is not optimized for such a large catalog out of the box, but I'd appreciate some guidance as to where the culprit lays. Does it try to load all the catalog in RAM at some point? As an additional precision: I have disabled the migration plugin.
<--- Last few GCs --->
[1:0x2264e20]   150434 ms: Mark-sweep 1402.0 (1441.6) -> 1402.0 (1435.1) MB, 1365.4 / 0.0 ms  (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 1365 ms) last resort GC in old space requested
[1:0x2264e20]   151717 ms: Mark-sweep 1402.0 (1435.1) -> 1402.0 (1435.1) MB, 1282.7 / 0.0 ms  last resort GC in old space requested
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 0xc1c3125ee1 <JSObject>
    1: deserializeObject(aka deserializeObject) [/app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/bson/lib/bson/parser/deserializer.js:~39] [pc=0x171c739ce774](this=0x22ad68382311 <undefined>,buffer=0x252d6ee86b89 <Uint8Array map = 0x3b8a9ee40631>,index=471456,options=0x252d6ee86b59 <Object map = 0x3e347a19ded1>,isArray=0x22ad68382421 <false>)
    2: deserializeObject(aka deseri...
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
 1: node::Abort() [node]
 2: 0x121a2cc [node]
 3: v8::Utils::ReportOOMFailure(char const*, bool) [node]
 4: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [node]
 5: v8::internal::Factory::NewTransitionArray(int) [node]
 6: v8::internal::TransitionArray::Insert(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Map>, v8::internal::SimpleTransitionFlag) [node]
 7: v8::internal::Map::ShareDescriptor(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::DescriptorArray>, v8::internal::Descriptor*) [node]
 8: v8::internal::Map::CopyAddDescriptor(v8::internal::Handle<v8::internal::Map>, v8::internal::Descriptor*, v8::internal::TransitionFlag) [node]
 9: v8::internal::Map::CopyWithField(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::FieldType>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Representation, v8::internal::TransitionFlag) [node]
10: v8::internal::Map::TransitionToDataProperty(v8::internal::Handle<v8::internal::Map>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::PropertyConstness, v8::internal::Object::StoreFromKeyed) [node]
11: v8::internal::LookupIterator::PrepareTransitionToDataProperty(v8::internal::Handle<v8::internal::JSObject>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed) [node]
12: v8::internal::Object::AddDataProperty(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::ShouldThrow, v8::internal::Object::StoreFromKeyed) [node]
13: v8::internal::Object::SetProperty(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::LanguageMode, v8::internal::Object::StoreFromKeyed) [node]
14: v8::internal::Runtime_SetProperty(int, v8::internal::Object**, v8::internal::Isolate*) [node]
yosefsun
@yosefsun
Apr 25 2018 20:48

Hi all!,

When I run meteor with profiler, I found out that the following are the slowest processes -

  1. Babel Compile :

Babel.compile…306,181 ms

  1. prepareProjectForBuild Method :

ProjectContext prepareProjectForBuild…208,197 ms (1)
| ├─ _downloadMissingPackages…756 ms (1)
| │ ├─ Isopack.readMetadataFromDirectory…337 ms (133)
| │ │ └─ files.readFile 280 ms (133)
| │ └─ other _downloadMissingPackages 419 ms
| └─ _buildLocalPackages 207,337 ms (1)

please help :confused::confused::confused:

William Moss
@willmoss1000
Apr 25 2018 22:33
The current stripe connect configuration doesn't use tokens for API requests. Is this intentional?
Daniel Honig
@dhonig
Apr 25 2018 23:04
@loanlaux an update on whats causing that, its the code in

``` imports/plugins/inventory/server/startup/init.js import { Products, Inventory } from "/lib/collections";
import { registerInventory } from "../methods/inventory";

// On first-time startup init the Inventory collection with entries for each product
Hooks.Events.add("afterCoreInit", () => {
// If we already have any inventory record, skip
const inventory = Inventory.find().count();
if (!inventory) {
const products = Products.find().fetch();
for (const product of products) {
Logger.debug(Registering product ${product.title});
registerInventory(product);
}
}
}); ```

Calling products.find.fetch() on > 1 million products is an issue