Linux kernel ftrace irqsoff tracer generates strange output - c

I was analyzing the interrupt latency in my system( Freescale ARM MX6Q with linux kernel version 3.0.35), I am using the irqsoff tracer, and this is the output I'm getting for the biggest irq off latency:
# tracer: irqsoff
#
# irqsoff latency trace v1.1.5
# --------------------------------------------------------------------
# latency: 2770 us, #89/89, CPU#0 | (M:preempt VP:0, KP:0, SP:0 HP:0 #P:4)
# -----------------
# | task: swapper-0 (uid:0 nice:0 policy:0 rt_prio:0)
# -----------------
# => started at: tick_oneshot_mode_active
# => ended at: default_idle
#
#
# _------=> CPU#
# / _-----=> irqs-off
# | / _----=> need-resched
# || / _---=> hardirq/softirq
# ||| / _--=> preempt-depth
# |||| / delay
# cmd pid ||||| time | caller
# \ / ||||| \ | /
<idle>-0 0d..1 1us : tick_oneshot_mode_active
<idle>-0 0d..1 2us : clockevents_notify <-arch_idle
<idle>-0 0d..1 3us : _raw_spin_lock_irqsave <-clockevents_notify
<idle>-0 0d..1 5us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..1 6us : add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..2 7us : clockevents_do_notify <-clockevents_notify
<idle>-0 0d..2 8us : raw_notifier_call_chain <-clockevents_do_notify
<idle>-0 0d..2 10us : __raw_notifier_call_chain <-raw_notifier_call_chain
<idle>-0 0d..2 11us : notifier_call_chain <-__raw_notifier_call_chain
<idle>-0 0d..2 12us : tick_notify <-notifier_call_chain
<idle>-0 0d..2 13us : tick_broadcast_oneshot_control <-tick_notify
<idle>-0 0d..2 15us : _raw_spin_lock_irqsave <-tick_broadcast_oneshot_control
<idle>-0 0d..2 16us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..2 17us+: add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..3 19us : clockevents_set_mode <-tick_broadcast_oneshot_control
<idle>-0 0d..3 20us : twd_set_mode <-clockevents_set_mode
<idle>-0 0d..3 21us : irq_modify_status <-gic_disable_ppi
<idle>-0 0d..3 22us : __irq_get_desc_lock <-irq_modify_status
<idle>-0 0d..3 24us : irq_to_desc <-__irq_get_desc_lock
<idle>-0 0d..3 25us : _raw_spin_lock_irqsave <-__irq_get_desc_lock
<idle>-0 0d..3 26us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..3 27us : add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..4 29us : __irq_put_desc_unlock <-irq_modify_status
<idle>-0 0d..4 30us : _raw_spin_unlock_irqrestore <-__irq_put_desc_unlock
<idle>-0 0d..4 31us : sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..3 32us : irq_get_irq_data <-gic_disable_ppi
<idle>-0 0d..3 34us : irq_to_desc <-irq_get_irq_data
<idle>-0 0d..3 35us : gic_mask_irq <-gic_disable_ppi
<idle>-0 0d..3 36us : _raw_spin_lock <-gic_mask_irq
<idle>-0 0d..3 37us : __raw_spin_lock <-_raw_spin_lock
<idle>-0 0d..3 39us : add_preempt_count <-__raw_spin_lock
<idle>-0 0d..4 40us : _raw_spin_unlock <-gic_mask_irq
<idle>-0 0d..4 41us+: sub_preempt_count <-_raw_spin_unlock
<idle>-0 0d..3 43us : _raw_spin_unlock_irqrestore <-tick_broadcast_oneshot_control
<idle>-0 0d..3 44us : sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..2 45us+: _raw_spin_unlock_irqrestore <-clockevents_notify
<idle>-0 0d..2 47us : sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..1 48us+: mxc_cpu_lp_set <-arch_idle
<idle>-0 0d..1 50us+: gpc_mask_single_irq <-mxc_cpu_lp_set
<idle>-0 0d..1 51us+: gpc_mask_single_irq <-mxc_cpu_lp_set
<idle>-0 0d..1 53us+: arch_idle_multi_core <-arch_idle
<idle>-0 0d..1 55us!: ca9_do_idle <-arch_idle_multi_core
<idle>-0 0d..1 2709us : clockevents_notify <-arch_idle
<idle>-0 0d..1 2710us : _raw_spin_lock_irqsave <-clockevents_notify
<idle>-0 0d..1 2711us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..1 2712us+: add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..2 2714us : clockevents_do_notify <-clockevents_notify
<idle>-0 0d..2 2715us : raw_notifier_call_chain <-clockevents_do_notify
<idle>-0 0d..2 2716us : __raw_notifier_call_chain <-raw_notifier_call_chain
<idle>-0 0d..2 2717us : notifier_call_chain <-__raw_notifier_call_chain
<idle>-0 0d..2 2718us : tick_notify <-notifier_call_chain
<idle>-0 0d..2 2720us : tick_broadcast_oneshot_control <-tick_notify
<idle>-0 0d..2 2721us : _raw_spin_lock_irqsave <-tick_broadcast_oneshot_control
<idle>-0 0d..2 2722us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..2 2723us : add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..3 2725us : clockevents_set_mode <-tick_broadcast_oneshot_control
<idle>-0 0d..3 2726us : twd_set_mode <-clockevents_set_mode
<idle>-0 0d..3 2727us : irq_modify_status <-gic_enable_ppi
<idle>-0 0d..3 2729us : __irq_get_desc_lock <-irq_modify_status
<idle>-0 0d..3 2730us : irq_to_desc <-__irq_get_desc_lock
<idle>-0 0d..3 2731us : _raw_spin_lock_irqsave <-__irq_get_desc_lock
<idle>-0 0d..3 2732us : __raw_spin_lock_irqsave <-_raw_spin_lock_irqsave
<idle>-0 0d..3 2733us+: add_preempt_count <-__raw_spin_lock_irqsave
<idle>-0 0d..4 2738us+: __irq_put_desc_unlock <-irq_modify_status
<idle>-0 0d..4 2739us : _raw_spin_unlock_irqrestore <-__irq_put_desc_unlock
<idle>-0 0d..4 2741us : sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..3 2742us : irq_get_irq_data <-gic_enable_ppi
<idle>-0 0d..3 2743us : irq_to_desc <-irq_get_irq_data
<idle>-0 0d..3 2745us : gic_unmask_irq <-gic_enable_ppi
<idle>-0 0d..3 2746us : _raw_spin_lock <-gic_unmask_irq
<idle>-0 0d..3 2747us : __raw_spin_lock <-_raw_spin_lock
<idle>-0 0d..3 2748us+: add_preempt_count <-__raw_spin_lock
<idle>-0 0d..4 2750us : _raw_spin_unlock <-gic_unmask_irq
<idle>-0 0d..4 2751us+: sub_preempt_count <-_raw_spin_unlock
<idle>-0 0d..3 2753us : ktime_get <-tick_broadcast_oneshot_control
<idle>-0 0d..3 2754us+: clocksource_mmio_readl_up <-ktime_get
<idle>-0 0d..3 2756us : tick_program_event <-tick_broadcast_oneshot_control
<idle>-0 0d..3 2757us : tick_dev_program_event <-tick_program_event
<idle>-0 0d..3 2758us : ktime_get <-tick_dev_program_event
<idle>-0 0d..3 2759us+: clocksource_mmio_readl_up <-ktime_get
<idle>-0 0d..3 2761us : clockevents_program_event <-tick_dev_program_event
<idle>-0 0d..3 2762us : twd_set_next_event <-clockevents_program_event
<idle>-0 0d..3 2764us : _raw_spin_unlock_irqrestore <-tick_broadcast_oneshot_control
<idle>-0 0d..3 2765us+: sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..2 2767us : _raw_spin_unlock_irqrestore <-clockevents_notify
<idle>-0 0d..2 2768us : sub_preempt_count <-_raw_spin_unlock_irqrestore
<idle>-0 0d..1 2769us+: default_idle
<idle>-0 0d..1 2772us+: trace_hardirqs_on <-default_idle
<idle>-0 0d..1 2773us : <stack trace>
=> trace_hardirqs_on
=> default_idle
=> cpu_idle
=> rest_init
=> start_kernel
=>
So according to ftrace I have a pretty big latency, it looks as if the interrupts are disabled as long as the CPU is idle. So I thought surely this cannot be true, so I looked more closely at function tick_oneshot_mode_active:
int tick_oneshot_mode_active(void)
{
unsigned long flags;
int ret;
local_irq_save(flags);
ret = __this_cpu_read(tick_cpu_device.mode) == TICKDEV_MODE_ONESHOT;
local_irq_restore(flags);
return ret;
}
So in the macro local_irq_save, the interrupts are disabled and the function trace_hardirqs_off() is called which registers that the interrupts were disabled:
#define local_irq_save(flags) \
do { \
raw_local_irq_save(flags); \
trace_hardirqs_off(); \
} while (0)
After checking the device mode the interrupts are enabled, now here it is strange:
#define local_irq_restore(flags) \
do { \
if (raw_irqs_disabled_flags(flags)) { \
raw_local_irq_restore(flags); \
trace_hardirqs_off(); \
} else { \
trace_hardirqs_on(); \
raw_local_irq_restore(flags); \
} \
} while (0)
In my case the code goes over the first branch:
if (raw_irqs_disabled_flags(flags)) { \
raw_local_irq_restore(flags); \
trace_hardirqs_off(); \
It looks as if even though the interrupts are enabled back, function trace_hardirqs_on is not called but trace_hardirqs_off(). Why is this happening, do I really have this big latency?

I faced with the same problem, and I patch kernel with this:
https://lkml.org/lkml/2014/5/25/83
after that idle disappear from trace.

Related

When using geometry datatype, SQL Server hangs

I want to compare a trip driven by devices by zones defined in our system. It works correct for 99% of the trips but some crash of SQL Server.
For instance this one:
DECLARE #string nvarchar(max) = ('LINESTRING(55.5104 24.9205,55.5104 24.9205,55.5105 24.9205,55.5105 24.9204,55.5105 24.9204,55.5105 24.9203,55.5104 24.9201,55.5049 24.9143,55.505 24.9144,55.5049 24.9143,55.4981 24.9072,55.4975 24.9069,55.4968 24.9067,55.4961 24.9066,55.4952 24.9066,55.4944 24.9069,55.494 24.9072,55.4934 24.9076,55.4929 24.9083,55.4927 24.9088,55.4926 24.9096,55.4926 24.9096,55.4926 24.9101,55.4928 24.9108,55.4931 24.9114,55.4936 24.9119,55.4936 24.9119,55.4938 24.9121,55.4951 24.9128,55.4948 24.9126,55.4949 24.9127,55.4967 24.9136,55.51 24.9203,55.5103 24.9204,55.5104 24.9203,55.5104 24.9203,55.5104 24.9202,55.51 24.9197,55.5039 24.9133,55.5039 24.9133,55.5039 24.9133,55.5004 24.9096,55.4982 24.9073,55.4976 24.907,55.4967 24.9067,55.496 24.9066,55.4954 24.9066,55.4944 24.9069,55.4939 24.9072,55.4932 24.9079,55.4929 24.9085,55.4927 24.9091,55.4926 24.9097,55.4927 24.9104,55.4929 24.911,55.4933 24.9115,55.494 24.9122,55.5069 24.9187,55.5091 24.9198,55.5093 24.9199,55.5094 24.9198,55.5094 24.9198,55.5094 24.9197,55.5093 24.9195,55.509 24.9193,55.509 24.9192,55.509 24.9192,55.509 24.9192,55.5089 24.9193,55.509 24.9194,55.5105 24.9203,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5106 24.9205,55.5104 24.9204,55.5098 24.9201,55.4945 24.9124,55.4937 24.9119,55.4932 24.9113,55.4928 24.9106,55.4926 24.9099,55.4927 24.9091,55.4929 24.9084,55.4933 24.9078,55.4939 24.9073,55.4945 24.9069,55.4952 24.9067,55.4959 24.9066,55.4966 24.9067,55.4973 24.9069,55.4979 24.9072,55.4987 24.9079,55.5046 24.914,55.5101 24.9198,55.5104 24.9202,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.5102 24.9204,55.5102 24.9204,55.5048 24.9177,55.4936 24.9119,55.4933 24.9115,55.493 24.9111,55.4926 24.9101,55.4926 24.9096,55.4927 24.9089,55.493 24.9082,55.4935 24.9076,55.494 24.9072,55.4949 24.9068,55.4954 24.9066,55.4963 24.9066,55.4971 24.9068,55.4978 24.9072,55.4985 24.9077,55.5104 24.9202,55.5104 24.9202,55.5104 24.9203,55.5104 24.9203,55.5104 24.9204,55.5103 24.9204,55.5097 24.9201,55.5086 24.9196,55.5021 24.9163,55.495 24.9126,55.4947 24.9124,55.4944 24.9123,55.4942 24.9122,55.4938 24.912,55.4933 24.9115,55.493 24.911,55.4927 24.9103,55.4927 24.9095,55.4928 24.9087,55.4933 24.9079,55.4939 24.9073,55.4948 24.9069,55.4957 24.9066,55.4966 24.9067,55.4974 24.9069,55.4981 24.9073,55.5091 24.9188,55.5101 24.9199,55.5101 24.92,55.51 24.92,55.51 24.92,55.5099 24.9201,55.5097 24.92,55.5095 24.92,55.4957 24.9131,55.4939 24.9122,55.4933 24.9117,55.493 24.9112,55.4927 24.9106,55.4926 24.9099,55.4926 24.9091,55.4929 24.9084,55.4932 24.9079,55.4938 24.9073,55.4943 24.907,55.4951 24.9067,55.496 24.9066,55.4966 24.9067,55.4973 24.9069,55.4981 24.9073,55.5032 24.9126,55.5105 24.9203,55.5105 24.9203,55.5106 24.9204,55.5106 24.9204,55.5105 24.9204,55.5104 24.9205,55.5103 24.9205,55.5101 24.9204,55.497 24.9138,55.4938 24.9121,55.4932 24.9115,55.4929 24.911,55.4926 24.9104,55.4925 24.9098,55.4926 24.9092,55.4927 24.9087,55.4931 24.9081,55.4936 24.9074,55.494 24.9072,55.4947 24.9068,55.4954 24.9066,55.496 24.9066,55.4967 24.9067,55.4974 24.9069,55.4982 24.9074,55.5046 24.9141,55.5046 24.9141,55.5046 24.9141,55.5046 24.9141,55.5048 24.9143,55.5104 24.9203,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.5103 24.9205,55.5045 24.9175,55.4938 24.9119,55.4931 24.9112,55.4927 24.9104,55.4926 24.9094,55.4928 24.9085,55.4934 24.9078,55.4941 24.9072,55.4949 24.9068,55.4959 24.9067,55.4968 24.9068,55.4977 24.9071,55.4984 24.9077,55.509 24.9188,55.5099 24.9198,55.5103 24.9202,55.5103 24.9203,55.5103 24.9203,55.5103 24.9203,55.5102 24.9204,55.5101 24.9204,55.51 24.9204,55.4976 24.9141,55.4937 24.912,55.4933 24.9116,55.4929 24.9109,55.4926 24.9102,55.4926 24.9097,55.4927 24.9089,55.493 24.9082,55.4934 24.9077,55.4939 24.9073,55.4946 24.9069,55.4952 24.9067,55.4958 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.4985 24.9077,55.506 24.9155,55.5104 24.9202,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5104 24.9204,55.5104 24.9204,55.5103 24.9204,55.5102 24.9204,55.5096 24.9202,55.4968 24.9137,55.4937 24.912,55.4933 24.9115,55.4929 24.911,55.4927 24.9101,55.4926 24.9096,55.4927 24.9089,55.493 24.9083,55.4933 24.9078,55.4938 24.9073,55.4944 24.907,55.4954 24.9067,55.496 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.4988 24.908,55.5009 24.9102,55.5068 24.9164,55.5102 24.92,55.5106 24.9205,55.5106 24.9205,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.4957 24.9131,55.4938 24.912,55.4933 24.9116,55.4929 24.911,55.4927 24.9105,55.4926 24.9098,55.4926 24.9092,55.4928 24.9086,55.4931 24.908,55.4936 24.9075,55.4941 24.9071,55.4948 24.9068,55.4955 24.9066,55.4962 24.9066,55.497 24.9067,55.4976 24.907,55.4985 24.9076,55.5061 24.9157,55.5103 24.9201,55.5103 24.9201,55.5104 24.9201,55.5104 24.9202,55.5105 24.9203,55.5104 24.9203,55.5104 24.9204,55.5103 24.9204,55.5103 24.9204,55.5091 24.9199,55.4938 24.9121,55.4933 24.9115,55.4929 24.9109,55.4926 24.9102,55.4926 24.9093,55.4928 24.9086,55.4932 24.9079,55.4937 24.9074,55.4937 24.9073,55.4941 24.9071,55.495 24.9068,55.4958 24.9066,55.4967 24.9067,55.4973 24.9069,55.4979 24.9072,55.4985 24.9076,55.5082 24.9178,55.5104 24.9203,55.5105 24.9203,55.5105 24.9203,55.5104 24.9204,55.5104 24.9204,55.5103 24.9205,55.5103 24.9204,55.5101 24.9204,55.51 24.9203,55.5098 24.9202,55.4937 24.9119,55.4932 24.9114,55.4928 24.9108,55.4927 24.9101,55.4926 24.9094,55.4927 24.9088,55.493 24.9082,55.4937 24.9074,55.4943 24.907,55.4949 24.9068,55.4955 24.9066,55.4964 24.9066,55.497 24.9068,55.4979 24.9072,55.4986 24.9077,55.507 24.9166,55.5104 24.9201,55.5105 24.9203,55.5105 24.9203,55.5104 24.9204,55.5104 24.9204,55.5103 24.9204,55.51 24.9203,55.4956 24.913,55.4939 24.9121,55.4932 24.9115,55.4929 24.9109,55.4927 24.9103,55.4926 24.9097,55.4927 24.9089,55.493 24.9083,55.4934 24.9077,55.4941 24.9071,55.4946 24.9069,55.4954 24.9067,55.4962 24.9066,55.4971 24.9068,55.4977 24.907,55.4982 24.9074,55.5056 24.9151,55.5099 24.9197,55.51 24.9198,55.51 24.9198,55.5099 24.9199,55.5098 24.9199,55.5097 24.9199,55.5096 24.9198,55.5095 24.9197,55.5086 24.919,55.5086 24.9189,55.5086 24.9189,55.5087 24.9189,55.5087 24.9189,55.5097 24.9199,55.51 24.92,55.5103 24.9202,55.5105 24.9203,55.5105 24.9204,55.5105 24.9204,55.5105 24.9205,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.5001 24.9153,55.5001 24.9153,55.4938 24.912,55.4932 24.9114,55.4928 24.9106,55.4927 24.9098,55.4928 24.909,55.4931 24.9082,55.4937 24.9075,55.4945 24.907,55.4954 24.9067,55.4964 24.9067,55.4973 24.9069,55.4981 24.9073,55.51 24.9197,55.5104 24.9201,55.5105 24.9202,55.5105 24.9203,55.5105 24.9204,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.4966 24.9136,55.4938 24.9121,55.4931 24.9114,55.4928 24.9109,55.4926 24.9101,55.4926 24.9095,55.4928 24.9087,55.493 24.9082,55.4935 24.9076,55.4941 24.9071,55.4948 24.9068,55.4956 24.9066,55.4961 24.9066,55.497 24.9068,55.4976 24.907,55.4982 24.9073,55.5051 24.9146,55.5099 24.9197,55.5099 24.9198,55.5099 24.9199,55.5098 24.9199,55.5097 24.9199,55.509 24.9193,55.5084 24.9188,55.5083 24.9187,55.5083 24.9188,55.5082 24.9188,55.5081 24.9188,55.5081 24.9188,55.508 24.9188,55.508 24.9188,55.5079 24.9189,55.5078 24.9189,55.5075 24.9187,55.5072 24.9186,55.5071 24.9186,55.507 24.9186,55.507 24.9187,55.5069 24.9187,55.5069 24.9187,55.5064 24.9185,55.4937 24.9119,55.4931 24.9112,55.4928 24.9107,55.4927 24.9101,55.4927 24.9093,55.4929 24.9085,55.4932 24.9081,55.4937 24.9075,55.4944 24.907,55.4952 24.9067,55.496 24.9066,55.4968 24.9068,55.4976 24.907,55.4983 24.9075,55.5075 24.9171,55.5101 24.9198,55.5101 24.9199,55.5101 24.9199,55.5101 24.92,55.51 24.92,55.5094 24.9199,55.4954 24.913,55.494 24.9121,55.4936 24.9117,55.4935 24.9116,55.4935 24.9116,55.4935 24.9116,55.4932 24.9114,55.493 24.9111,55.4928 24.9107,55.4927 24.9102,55.4927 24.9095,55.4929 24.9087,55.4933 24.908,55.4938 24.9074,55.4945 24.907,55.4953 24.9067,55.4961 24.9067,55.4969 24.9068,55.4976 24.9071,55.4983 24.9075,55.5093 24.9189,55.5106 24.9203,55.5106 24.9204,55.5106 24.9204,55.5105 24.9204,55.5104 24.9205,55.5103 24.9205,55.4963 24.9134,55.4938 24.9121,55.4933 24.9116,55.4929 24.9111,55.4927 24.9104,55.4926 24.9099,55.4927 24.909,55.4929 24.9084,55.4933 24.9078,55.4939 24.9073,55.4945 24.9069,55.4952 24.9067,55.4961 24.9066,55.4968 24.9067,55.4973 24.9069,55.4981 24.9073,55.4987 24.9079,55.5069 24.9165,55.5085 24.9182,55.5085 24.9182,55.51 24.9197,55.5101 24.9198,55.5101 24.9199,55.5101 24.92,55.51 24.9201,55.5099 24.9201,55.5098 24.9202,55.5097 24.9201,55.5094 24.92,55.4937 24.9119,55.4932 24.9114,55.4928 24.9107,55.4927 24.9103,55.4926 24.9096,55.4927 24.909,55.493 24.9083,55.4935 24.9077,55.4941 24.9072,55.4948 24.9068,55.4955 24.9067,55.4962 24.9067,55.4971 24.9068,55.4976 24.907,55.4982 24.9074,55.505 24.9146,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.5102 24.9204,55.5058 24.9182,55.4982 24.9143,55.4937 24.912,55.4933 24.9116,55.493 24.9111,55.4927 24.9102,55.4926 24.9096,55.4927 24.9091,55.493 24.9083,55.4935 24.9076,55.494 24.9072,55.4948 24.9069,55.4956 24.9067,55.4964 24.9067,55.4972 24.9068,55.4976 24.907,55.4982 24.9074,55.4998 24.909,55.4997 24.9089,55.4997 24.9089,55.4997 24.9089,55.5085 24.9181,55.5101 24.9198,55.5103 24.9201,55.5104 24.9202,55.5104 24.9202,55.5104 24.9203,55.5104 24.9203,55.5103 24.9203,55.5103 24.9204,55.5102 24.9204,55.51 24.9203,55.4978 24.9141,55.4938 24.912,55.4934 24.9116,55.4929 24.9109,55.4927 24.9104,55.4926 24.9097,55.4927 24.9089,55.4929 24.9084,55.4933 24.9079,55.4939 24.9073,55.4946 24.9069,55.4951 24.9067,55.4958 24.9066,55.4965 24.9067,55.4974 24.9069,55.498 24.9072,55.4986 24.9077,55.5063 24.9158,55.51 24.9198,55.5103 24.92,55.5103 24.9201,55.5103 24.9201,55.5103 24.9202,55.5102 24.9203,55.5102 24.9203,55.5101 24.9203,55.5099 24.9203,55.4971 24.9138,55.4938 24.912,55.4934 24.9117,55.493 24.911,55.4927 24.9105,55.4926 24.9098,55.4927 24.9092,55.4929 24.9086,55.4932 24.908,55.4937 24.9074,55.4941 24.9071,55.4948 24.9068,55.4956 24.9066,55.4964 24.9066,55.497 24.9067,55.4977 24.9071,55.4983 24.9074,55.5052 24.9146,55.5065 24.916,55.5106 24.9204,55.5107 24.9204,55.5106 24.9205,55.5106 24.9205,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.4973 24.9139,55.4937 24.912,55.4932 24.9114,55.4929 24.9108,55.4927 24.9102,55.4926 24.9097,55.4928 24.9089,55.493 24.9084,55.4933 24.9079,55.4938 24.9074,55.4943 24.907,55.4951 24.9067,55.4957 24.9066,55.4965 24.9067,55.4972 24.9068,55.4978 24.9071,55.4984 24.9075,55.5048 24.9144,55.5061 24.9157,55.5061 24.9157,55.5103 24.92,55.5104 24.9201,55.5104 24.9202,55.5104 24.9203,55.5103 24.9203,55.5102 24.9204,55.5102 24.9203,55.4946 24.9125,55.4936 24.9117,55.4931 24.9111,55.4928 24.9103,55.4927 24.9095,55.4928 24.9088,55.4932 24.9081,55.4938 24.9074,55.4944 24.907,55.4952 24.9067,55.4959 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.5055 24.9151,55.5105 24.9203,55.5104 24.9204,55.5103 24.9204,55.5101 24.9204,55.498 24.9143,55.4939 24.9121,55.4932 24.9115,55.4928 24.9108,55.4927 24.9102,55.4926 24.9095,55.4927 24.909,55.4929 24.9084,55.4932 24.9079,55.4937 24.9074,55.4943 24.907,55.4949 24.9068,55.4956 24.9066,55.4964 24.9066,55.4971 24.9068,55.4977 24.907,55.4983 24.9075,55.5058 24.9153,55.5108 24.9206,55.5116 24.921,55.5119 24.9212,55.512 24.9213,55.5121 24.9215,55.5121 24.9216,55.512 24.9217,55.5117 24.922,55.5116 24.9219,55.511 24.9217,55.5109 24.9217,55.5108 24.9218,55.5107 24.9218,55.5106 24.922,55.5107 24.9218,55.5108 24.9218,55.5108 24.9217,55.5107 24.9215,55.5104 24.9211,55.5097 24.9205,55.5096 24.9205,55.5095 24.9205,55.5094 24.9205,55.5094 24.9207,55.5091 24.921,55.5089 24.9211,55.5089 24.9211,55.5089 24.9211,55.5091 24.9211,55.5092 24.9211,55.5092 24.9211,55.5093 24.9207,55.5094 24.9206,55.5094 24.9206,55.5094 24.9205,55.5092 24.9204,55.5077 24.9195,55.5077 24.9195,55.5076 24.9196,55.5077 24.9196,55.509 24.9202,55.509 24.9202,55.509 24.9202,55.5109 24.9214,55.5111 24.9216,55.5111 24.9216,55.5108 24.9218,55.5107 24.9219,55.5106 24.9219,55.5106 24.9218,55.5107 24.9217,55.5108 24.9217,55.5108 24.9217,55.5109 24.9217,55.5117 24.9219,55.5118 24.9219,55.5119 24.9219,55.512 24.9219,55.512 24.9218,55.5121 24.9217,55.5121 24.9215,55.512 24.9212,55.5119 24.9212,55.5118 24.9211,55.5106 24.9206,55.5105 24.9206,55.5105 24.9206,55.5105 24.9206,55.5105 24.9205,55.5105 24.9204,55.5105 24.9204,55.5106 24.9205,55.5108 24.9206,55.5109 24.9207,55.5113 24.9209,55.5119 24.9212,55.512 24.9212,55.512 24.9213,55.5121 24.9215,55.5121 24.9215,55.5122 24.9216,55.5122 24.9216,55.5124 24.9215,55.5125 24.9214,55.5126 24.9213,55.5127 24.9213,55.5127 24.9213,55.5127 24.9213,55.5127 24.9214,55.5127 24.9214,55.5127 24.9214,55.5126 24.9214,55.5126 24.9213,55.5126 24.9212,55.5125 24.9211,55.5125 24.9212,55.5125 24.9212,55.5125 24.9213,55.5125 24.9214,55.5124 24.9215,55.5117 24.9219,55.5116 24.9219,55.5115 24.9219,55.5111 24.9217,55.5104 24.9212,55.5102 24.9211,55.5102 24.9211,55.5102 24.9211,55.5102 24.921,55.5102 24.9209,55.5101 24.9208,55.5101 24.9208,55.5098 24.9206,55.4964 24.9138,55.4946 24.9129,55.4941 24.9128,55.4938 24.9126,55.4937 24.9126,55.4937 24.9126,55.4937 24.9126,55.4936 24.9126,55.4935 24.9123,55.4934 24.9122,55.4934 24.9121,55.4933 24.912,55.4931 24.9119,55.493 24.9119,55.4929 24.9119,55.4928 24.9119,55.4925 24.9124,55.4924 24.9124,55.4922 24.9124,55.4921 24.9125,55.492 24.9125,55.4906 24.9147,55.4906 24.9148,55.4906 24.9149,55.4922 24.9157,55.4922 24.9158,55.4908 24.9179,55.4907 24.9179,55.4906 24.9179,55.4899 24.9176,55.4898 24.9176,55.4897 24.9177,55.4889 24.919,55.4888 24.919,55.4887 24.919,55.4887 24.919,55.4879 24.9185,55.4879 24.9184,55.4879 24.9183,55.488 24.9181,55.4886 24.9172,55.4887 24.9171,55.4888 24.9171,55.4894 24.9173,55.4906 24.9179,55.4907 24.9179,55.4908 24.9179,55.4922 24.9158,55.4921 24.9157,55.4906 24.9148,55.4906 24.9148,55.4906 24.9147,55.492 24.9125,55.4921 24.9124,55.4922 24.9124,55.4924 24.9124,55.4925 24.9124,55.4926 24.9123,55.4929 24.9118,55.4929 24.9117,55.4923 24.91,55.4923 24.9094,55.4924 24.9088,55.4926 24.9082,55.4932 24.9075,55.4937 24.907,55.4945 24.9066,55.4951 24.9064,55.4958 24.9063,55.4965 24.9063,55.4975 24.9066,55.4982 24.907,55.499 24.9077,55.5109 24.9203,55.5112 24.9206,55.5113 24.9207,55.5114 24.9207,55.5117 24.9207,55.5119 24.9206,55.5121 24.9206,55.5123 24.9207,55.5124 24.9207,55.513 24.9212,55.513 24.9213,55.513 24.9215,55.5129 24.9215,55.5128 24.9216,55.5127 24.9216,55.5126 24.9216,55.5125 24.9215,55.5126 24.9214,55.5126 24.9214,55.5127 24.9213,55.5127 24.9213,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5126 24.9212,55.5125 24.9212,55.5125 24.9214,55.5125 24.9214,55.5124 24.9214,55.5123 24.9214,55.5108 24.9207,55.5106 24.9206,55.5106 24.9206,55.5106 24.9206,55.5107 24.9206,55.5109 24.9207,55.511 24.9208,55.512 24.9213,55.5121 24.9213,55.5121 24.9214,55.5121 24.9215,55.5119 24.9217,55.5118 24.9218,55.5118 24.9218,55.5117 24.9217,55.5117 24.9217,55.5116 24.9216,55.5117 24.9215,55.5117 24.9214,55.5119 24.9213,55.5119 24.9212,55.5119 24.9212,55.511 24.9208,55.5074 24.917,55.498 24.9073,55.4975 24.907,55.4968 24.9068,55.4966 24.9067,55.4955 24.9067,55.4947 24.9069,55.4938 24.9073,55.4934 24.9077,55.4931 24.9081,55.4927 24.9089,55.4926 24.9095,55.4926 24.9101,55.4929 24.9109,55.4933 24.9116,55.494 24.9122,55.5032 24.9168,55.5042 24.9173,55.5044 24.9175,55.5119 24.9212,55.512 24.9213,55.512 24.9215,55.512 24.9216,55.5118 24.9219,55.5117 24.9219,55.5116 24.9219,55.511 24.9215,55.5097 24.9207,55.5096 24.9207,55.5094 24.9207,55.5093 24.9207,55.5093 24.9208,55.5092 24.921,55.5092 24.921,55.5092 24.9211,55.5092 24.9211,55.5092 24.9211,55.5092 24.9211,55.509 24.9212,55.509 24.9211,55.509 24.9211,55.509 24.921,55.5093 24.9208,55.5094 24.9207,55.5096 24.9207,55.5097 24.9207,55.5106 24.9213,55.511 24.9217,55.5112 24.9221,55.5112 24.9222,55.5112 24.9223,55.5026 24.9357,55.495 24.9475,55.495 24.9476,55.4951 24.9477,55.4954 24.948,55.4972 24.9496,55.4973 24.9498,55.4973 24.9499,55.4965 24.9512,55.4965 24.9514,55.4966 24.9514,55.4967 24.9515,55.497 24.9518,55.5001 24.9535,55.5003 24.9536,55.5006 24.9536,55.5007 24.9535,55.5009 24.9534,55.501 24.9534,55.501 24.9535,55.5009 24.9536,55.5005 24.9536,55.5003 24.9536,55.5 24.9536,55.4995 24.9534,55.4993 24.9534,55.4991 24.9533,55.4978 24.9525,55.4977 24.9525,55.4976 24.9526,55.4902 24.9642,55.4895 24.9676,55.4895 24.9678,55.4894 24.9679,55.4893 24.968,55.4885 24.969,55.4883 24.9692,55.4881 24.9693,55.4861 24.9694,55.4859 24.9695,55.4791 24.9789,55.4789 24.979,55.4788 24.9789,55.4769 24.9778,55.4766 24.9775,55.4766 24.9773,55.4767 24.9769,55.4769 24.9765,55.477 24.9764,55.477 24.9764)')`
`
When using SELECT geometry::STGeomFromText(#string, 4326); it throws a memory error when going to the geography tab.
When doing SELECT geometry::STGeomFromText(#string, 4326).MakeValid(); it crashes the SQL Server engine for 3-5 minutes.
I tried everything to work around this but I'm kinda stuck.
I want to have some sort of way to make sure it does not crash processing and make it work.
Live some servers are on SQL Server 2008R2 and issue still seems to be there on SQL Server 2019
CREATE FUNCTION [dbo].UDF_CreateList(#SplitOn char(1), #List varchar(MAX))
RETURNS TABLE
AS
RETURN
(
SELECT
ROW_NUMBER() OVER(ORDER BY number) AS RowNumber
,LTRIM(RTRIM(SUBSTRING(ListValue, number+1, CHARINDEX(#SplitOn, ListValue, number+1)-number - 1))) AS ListValue
FROM (
SELECT #SplitOn + #List + #SplitOn AS ListValue
) AS InnerQuery
INNER JOIN master.dbo.spt_values n ON n.Number < LEN(InnerQuery.ListValue)
WHERE SUBSTRING(ListValue, number, 1) = #SplitOn
AND n.type = 'P'
);
CREATE FUNCTION [dbo].[UDF_CreateGeometryFromString](#Tripstring VARCHAR(max))
RETURNS GEOMETRY
AS
BEGIN
DECLARE #g GEOMETRY = geometry::STGeomFromText(#Tripstring, 4326);
IF #g.STIsValid() = 1
BEGIN
RETURN #g.MakeValid();
END
ELSE
BEGIN
SET #Tripstring = Replace(#Tripstring, 'LINESTRING(', '');
SET #Tripstring = Replace(#Tripstring, ')', '');
DECLARE #Temp TABLE
(
id INT IDENTITY(1, 1) PRIMARY KEY,
ListValue NVARCHAR(100)
);
DECLARE #TempMultiline TABLE
(
id INT IDENTITY(1, 1) PRIMARY KEY,
ListValue NVARCHAR(100)
);
INSERT INTO #Temp
(ListValue)
SELECT ListValue
FROM dbo.Udf_createlist(',', #Tripstring);
DECLARE #resultCount INT = (SELECT Count(*)
FROM #Temp);
IF ( #resultCount < 2 )
BEGIN
RETURN NULL;
END
DECLARE #return NVARCHAR(MAX) = Cast(#resultCount AS NVARCHAR(MAX));
INSERT INTO #TempMultiline
(ListValue)
SELECT '(' + t1.ListValue + ',' + t2.ListValue + ')'
FROM (SELECT id,
ListValue,
Row_number()
OVER(
ORDER BY id) AS Inc
FROM #Temp) t1
LEFT JOIN (SELECT id,
ListValue,
Row_number()
OVER(
ORDER BY id) - 1 AS Inc
FROM #Temp) t2
ON t2.Inc = t1.Inc
DECLARE #multilinestring NVARCHAR(max) = 'MULTILINESTRING' + '('
+ Substring((SELECT ',' + ListValue FROM #TempMultiline FOR XML PATH('')), 2, 9999) + ')';
DECLARE #g4 GEOMETRY = geometry::STGeomFromText(#multilinestring, 4326).MakeValid();
RETURN #g4;
END
RETURN NULL;
END
DECLARE #string nvarchar(max) = ('LINESTRING(55.5104 24.9205,55.5104 24.9205,55.5105 24.9205,55.5105 24.9204,55.5105 24.9204,55.5105 24.9203,55.5104 24.9201,55.5049 24.9143,55.505 24.9144,55.5049 24.9143,55.4981 24.9072,55.4975 24.9069,55.4968 24.9067,55.4961 24.9066,55.4952 24.9066,55.4944 24.9069,55.494 24.9072,55.4934 24.9076,55.4929 24.9083,55.4927 24.9088,55.4926 24.9096,55.4926 24.9096,55.4926 24.9101,55.4928 24.9108,55.4931 24.9114,55.4936 24.9119,55.4936 24.9119,55.4938 24.9121,55.4951 24.9128,55.4948 24.9126,55.4949 24.9127,55.4967 24.9136,55.51 24.9203,55.5103 24.9204,55.5104 24.9203,55.5104 24.9203,55.5104 24.9202,55.51 24.9197,55.5039 24.9133,55.5039 24.9133,55.5039 24.9133,55.5004 24.9096,55.4982 24.9073,55.4976 24.907,55.4967 24.9067,55.496 24.9066,55.4954 24.9066,55.4944 24.9069,55.4939 24.9072,55.4932 24.9079,55.4929 24.9085,55.4927 24.9091,55.4926 24.9097,55.4927 24.9104,55.4929 24.911,55.4933 24.9115,55.494 24.9122,55.5069 24.9187,55.5091 24.9198,55.5093 24.9199,55.5094 24.9198,55.5094 24.9198,55.5094 24.9197,55.5093 24.9195,55.509 24.9193,55.509 24.9192,55.509 24.9192,55.509 24.9192,55.5089 24.9193,55.509 24.9194,55.5105 24.9203,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5107 24.9204,55.5106 24.9205,55.5104 24.9204,55.5098 24.9201,55.4945 24.9124,55.4937 24.9119,55.4932 24.9113,55.4928 24.9106,55.4926 24.9099,55.4927 24.9091,55.4929 24.9084,55.4933 24.9078,55.4939 24.9073,55.4945 24.9069,55.4952 24.9067,55.4959 24.9066,55.4966 24.9067,55.4973 24.9069,55.4979 24.9072,55.4987 24.9079,55.5046 24.914,55.5101 24.9198,55.5104 24.9202,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.5102 24.9204,55.5102 24.9204,55.5048 24.9177,55.4936 24.9119,55.4933 24.9115,55.493 24.9111,55.4926 24.9101,55.4926 24.9096,55.4927 24.9089,55.493 24.9082,55.4935 24.9076,55.494 24.9072,55.4949 24.9068,55.4954 24.9066,55.4963 24.9066,55.4971 24.9068,55.4978 24.9072,55.4985 24.9077,55.5104 24.9202,55.5104 24.9202,55.5104 24.9203,55.5104 24.9203,55.5104 24.9204,55.5103 24.9204,55.5097 24.9201,55.5086 24.9196,55.5021 24.9163,55.495 24.9126,55.4947 24.9124,55.4944 24.9123,55.4942 24.9122,55.4938 24.912,55.4933 24.9115,55.493 24.911,55.4927 24.9103,55.4927 24.9095,55.4928 24.9087,55.4933 24.9079,55.4939 24.9073,55.4948 24.9069,55.4957 24.9066,55.4966 24.9067,55.4974 24.9069,55.4981 24.9073,55.5091 24.9188,55.5101 24.9199,55.5101 24.92,55.51 24.92,55.51 24.92,55.5099 24.9201,55.5097 24.92,55.5095 24.92,55.4957 24.9131,55.4939 24.9122,55.4933 24.9117,55.493 24.9112,55.4927 24.9106,55.4926 24.9099,55.4926 24.9091,55.4929 24.9084,55.4932 24.9079,55.4938 24.9073,55.4943 24.907,55.4951 24.9067,55.496 24.9066,55.4966 24.9067,55.4973 24.9069,55.4981 24.9073,55.5032 24.9126,55.5105 24.9203,55.5105 24.9203,55.5106 24.9204,55.5106 24.9204,55.5105 24.9204,55.5104 24.9205,55.5103 24.9205,55.5101 24.9204,55.497 24.9138,55.4938 24.9121,55.4932 24.9115,55.4929 24.911,55.4926 24.9104,55.4925 24.9098,55.4926 24.9092,55.4927 24.9087,55.4931 24.9081,55.4936 24.9074,55.494 24.9072,55.4947 24.9068,55.4954 24.9066,55.496 24.9066,55.4967 24.9067,55.4974 24.9069,55.4982 24.9074,55.5046 24.9141,55.5046 24.9141,55.5046 24.9141,55.5046 24.9141,55.5048 24.9143,55.5104 24.9203,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.5103 24.9205,55.5045 24.9175,55.4938 24.9119,55.4931 24.9112,55.4927 24.9104,55.4926 24.9094,55.4928 24.9085,55.4934 24.9078,55.4941 24.9072,55.4949 24.9068,55.4959 24.9067,55.4968 24.9068,55.4977 24.9071,55.4984 24.9077,55.509 24.9188,55.5099 24.9198,55.5103 24.9202,55.5103 24.9203,55.5103 24.9203,55.5103 24.9203,55.5102 24.9204,55.5101 24.9204,55.51 24.9204,55.4976 24.9141,55.4937 24.912,55.4933 24.9116,55.4929 24.9109,55.4926 24.9102,55.4926 24.9097,55.4927 24.9089,55.493 24.9082,55.4934 24.9077,55.4939 24.9073,55.4946 24.9069,55.4952 24.9067,55.4958 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.4985 24.9077,55.506 24.9155,55.5104 24.9202,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5104 24.9204,55.5104 24.9204,55.5103 24.9204,55.5102 24.9204,55.5096 24.9202,55.4968 24.9137,55.4937 24.912,55.4933 24.9115,55.4929 24.911,55.4927 24.9101,55.4926 24.9096,55.4927 24.9089,55.493 24.9083,55.4933 24.9078,55.4938 24.9073,55.4944 24.907,55.4954 24.9067,55.496 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.4988 24.908,55.5009 24.9102,55.5068 24.9164,55.5102 24.92,55.5106 24.9205,55.5106 24.9205,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.4957 24.9131,55.4938 24.912,55.4933 24.9116,55.4929 24.911,55.4927 24.9105,55.4926 24.9098,55.4926 24.9092,55.4928 24.9086,55.4931 24.908,55.4936 24.9075,55.4941 24.9071,55.4948 24.9068,55.4955 24.9066,55.4962 24.9066,55.497 24.9067,55.4976 24.907,55.4985 24.9076,55.5061 24.9157,55.5103 24.9201,55.5103 24.9201,55.5104 24.9201,55.5104 24.9202,55.5105 24.9203,55.5104 24.9203,55.5104 24.9204,55.5103 24.9204,55.5103 24.9204,55.5091 24.9199,55.4938 24.9121,55.4933 24.9115,55.4929 24.9109,55.4926 24.9102,55.4926 24.9093,55.4928 24.9086,55.4932 24.9079,55.4937 24.9074,55.4937 24.9073,55.4941 24.9071,55.495 24.9068,55.4958 24.9066,55.4967 24.9067,55.4973 24.9069,55.4979 24.9072,55.4985 24.9076,55.5082 24.9178,55.5104 24.9203,55.5105 24.9203,55.5105 24.9203,55.5104 24.9204,55.5104 24.9204,55.5103 24.9205,55.5103 24.9204,55.5101 24.9204,55.51 24.9203,55.5098 24.9202,55.4937 24.9119,55.4932 24.9114,55.4928 24.9108,55.4927 24.9101,55.4926 24.9094,55.4927 24.9088,55.493 24.9082,55.4937 24.9074,55.4943 24.907,55.4949 24.9068,55.4955 24.9066,55.4964 24.9066,55.497 24.9068,55.4979 24.9072,55.4986 24.9077,55.507 24.9166,55.5104 24.9201,55.5105 24.9203,55.5105 24.9203,55.5104 24.9204,55.5104 24.9204,55.5103 24.9204,55.51 24.9203,55.4956 24.913,55.4939 24.9121,55.4932 24.9115,55.4929 24.9109,55.4927 24.9103,55.4926 24.9097,55.4927 24.9089,55.493 24.9083,55.4934 24.9077,55.4941 24.9071,55.4946 24.9069,55.4954 24.9067,55.4962 24.9066,55.4971 24.9068,55.4977 24.907,55.4982 24.9074,55.5056 24.9151,55.5099 24.9197,55.51 24.9198,55.51 24.9198,55.5099 24.9199,55.5098 24.9199,55.5097 24.9199,55.5096 24.9198,55.5095 24.9197,55.5086 24.919,55.5086 24.9189,55.5086 24.9189,55.5087 24.9189,55.5087 24.9189,55.5097 24.9199,55.51 24.92,55.5103 24.9202,55.5105 24.9203,55.5105 24.9204,55.5105 24.9204,55.5105 24.9205,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.5001 24.9153,55.5001 24.9153,55.4938 24.912,55.4932 24.9114,55.4928 24.9106,55.4927 24.9098,55.4928 24.909,55.4931 24.9082,55.4937 24.9075,55.4945 24.907,55.4954 24.9067,55.4964 24.9067,55.4973 24.9069,55.4981 24.9073,55.51 24.9197,55.5104 24.9201,55.5105 24.9202,55.5105 24.9203,55.5105 24.9204,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5103 24.9205,55.4966 24.9136,55.4938 24.9121,55.4931 24.9114,55.4928 24.9109,55.4926 24.9101,55.4926 24.9095,55.4928 24.9087,55.493 24.9082,55.4935 24.9076,55.4941 24.9071,55.4948 24.9068,55.4956 24.9066,55.4961 24.9066,55.497 24.9068,55.4976 24.907,55.4982 24.9073,55.5051 24.9146,55.5099 24.9197,55.5099 24.9198,55.5099 24.9199,55.5098 24.9199,55.5097 24.9199,55.509 24.9193,55.5084 24.9188,55.5083 24.9187,55.5083 24.9188,55.5082 24.9188,55.5081 24.9188,55.5081 24.9188,55.508 24.9188,55.508 24.9188,55.5079 24.9189,55.5078 24.9189,55.5075 24.9187,55.5072 24.9186,55.5071 24.9186,55.507 24.9186,55.507 24.9187,55.5069 24.9187,55.5069 24.9187,55.5064 24.9185,55.4937 24.9119,55.4931 24.9112,55.4928 24.9107,55.4927 24.9101,55.4927 24.9093,55.4929 24.9085,55.4932 24.9081,55.4937 24.9075,55.4944 24.907,55.4952 24.9067,55.496 24.9066,55.4968 24.9068,55.4976 24.907,55.4983 24.9075,55.5075 24.9171,55.5101 24.9198,55.5101 24.9199,55.5101 24.9199,55.5101 24.92,55.51 24.92,55.5094 24.9199,55.4954 24.913,55.494 24.9121,55.4936 24.9117,55.4935 24.9116,55.4935 24.9116,55.4935 24.9116,55.4932 24.9114,55.493 24.9111,55.4928 24.9107,55.4927 24.9102,55.4927 24.9095,55.4929 24.9087,55.4933 24.908,55.4938 24.9074,55.4945 24.907,55.4953 24.9067,55.4961 24.9067,55.4969 24.9068,55.4976 24.9071,55.4983 24.9075,55.5093 24.9189,55.5106 24.9203,55.5106 24.9204,55.5106 24.9204,55.5105 24.9204,55.5104 24.9205,55.5103 24.9205,55.4963 24.9134,55.4938 24.9121,55.4933 24.9116,55.4929 24.9111,55.4927 24.9104,55.4926 24.9099,55.4927 24.909,55.4929 24.9084,55.4933 24.9078,55.4939 24.9073,55.4945 24.9069,55.4952 24.9067,55.4961 24.9066,55.4968 24.9067,55.4973 24.9069,55.4981 24.9073,55.4987 24.9079,55.5069 24.9165,55.5085 24.9182,55.5085 24.9182,55.51 24.9197,55.5101 24.9198,55.5101 24.9199,55.5101 24.92,55.51 24.9201,55.5099 24.9201,55.5098 24.9202,55.5097 24.9201,55.5094 24.92,55.4937 24.9119,55.4932 24.9114,55.4928 24.9107,55.4927 24.9103,55.4926 24.9096,55.4927 24.909,55.493 24.9083,55.4935 24.9077,55.4941 24.9072,55.4948 24.9068,55.4955 24.9067,55.4962 24.9067,55.4971 24.9068,55.4976 24.907,55.4982 24.9074,55.505 24.9146,55.5105 24.9203,55.5105 24.9203,55.5105 24.9204,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.5102 24.9204,55.5058 24.9182,55.4982 24.9143,55.4937 24.912,55.4933 24.9116,55.493 24.9111,55.4927 24.9102,55.4926 24.9096,55.4927 24.9091,55.493 24.9083,55.4935 24.9076,55.494 24.9072,55.4948 24.9069,55.4956 24.9067,55.4964 24.9067,55.4972 24.9068,55.4976 24.907,55.4982 24.9074,55.4998 24.909,55.4997 24.9089,55.4997 24.9089,55.4997 24.9089,55.5085 24.9181,55.5101 24.9198,55.5103 24.9201,55.5104 24.9202,55.5104 24.9202,55.5104 24.9203,55.5104 24.9203,55.5103 24.9203,55.5103 24.9204,55.5102 24.9204,55.51 24.9203,55.4978 24.9141,55.4938 24.912,55.4934 24.9116,55.4929 24.9109,55.4927 24.9104,55.4926 24.9097,55.4927 24.9089,55.4929 24.9084,55.4933 24.9079,55.4939 24.9073,55.4946 24.9069,55.4951 24.9067,55.4958 24.9066,55.4965 24.9067,55.4974 24.9069,55.498 24.9072,55.4986 24.9077,55.5063 24.9158,55.51 24.9198,55.5103 24.92,55.5103 24.9201,55.5103 24.9201,55.5103 24.9202,55.5102 24.9203,55.5102 24.9203,55.5101 24.9203,55.5099 24.9203,55.4971 24.9138,55.4938 24.912,55.4934 24.9117,55.493 24.911,55.4927 24.9105,55.4926 24.9098,55.4927 24.9092,55.4929 24.9086,55.4932 24.908,55.4937 24.9074,55.4941 24.9071,55.4948 24.9068,55.4956 24.9066,55.4964 24.9066,55.497 24.9067,55.4977 24.9071,55.4983 24.9074,55.5052 24.9146,55.5065 24.916,55.5106 24.9204,55.5107 24.9204,55.5106 24.9205,55.5106 24.9205,55.5105 24.9205,55.5104 24.9205,55.5104 24.9205,55.4973 24.9139,55.4937 24.912,55.4932 24.9114,55.4929 24.9108,55.4927 24.9102,55.4926 24.9097,55.4928 24.9089,55.493 24.9084,55.4933 24.9079,55.4938 24.9074,55.4943 24.907,55.4951 24.9067,55.4957 24.9066,55.4965 24.9067,55.4972 24.9068,55.4978 24.9071,55.4984 24.9075,55.5048 24.9144,55.5061 24.9157,55.5061 24.9157,55.5103 24.92,55.5104 24.9201,55.5104 24.9202,55.5104 24.9203,55.5103 24.9203,55.5102 24.9204,55.5102 24.9203,55.4946 24.9125,55.4936 24.9117,55.4931 24.9111,55.4928 24.9103,55.4927 24.9095,55.4928 24.9088,55.4932 24.9081,55.4938 24.9074,55.4944 24.907,55.4952 24.9067,55.4959 24.9066,55.4966 24.9067,55.4974 24.9069,55.498 24.9073,55.5055 24.9151,55.5105 24.9203,55.5104 24.9204,55.5103 24.9204,55.5101 24.9204,55.498 24.9143,55.4939 24.9121,55.4932 24.9115,55.4928 24.9108,55.4927 24.9102,55.4926 24.9095,55.4927 24.909,55.4929 24.9084,55.4932 24.9079,55.4937 24.9074,55.4943 24.907,55.4949 24.9068,55.4956 24.9066,55.4964 24.9066,55.4971 24.9068,55.4977 24.907,55.4983 24.9075,55.5058 24.9153,55.5108 24.9206,55.5116 24.921,55.5119 24.9212,55.512 24.9213,55.5121 24.9215,55.5121 24.9216,55.512 24.9217,55.5117 24.922,55.5116 24.9219,55.511 24.9217,55.5109 24.9217,55.5108 24.9218,55.5107 24.9218,55.5106 24.922,55.5107 24.9218,55.5108 24.9218,55.5108 24.9217,55.5107 24.9215,55.5104 24.9211,55.5097 24.9205,55.5096 24.9205,55.5095 24.9205,55.5094 24.9205,55.5094 24.9207,55.5091 24.921,55.5089 24.9211,55.5089 24.9211,55.5089 24.9211,55.5091 24.9211,55.5092 24.9211,55.5092 24.9211,55.5093 24.9207,55.5094 24.9206,55.5094 24.9206,55.5094 24.9205,55.5092 24.9204,55.5077 24.9195,55.5077 24.9195,55.5076 24.9196,55.5077 24.9196,55.509 24.9202,55.509 24.9202,55.509 24.9202,55.5109 24.9214,55.5111 24.9216,55.5111 24.9216,55.5108 24.9218,55.5107 24.9219,55.5106 24.9219,55.5106 24.9218,55.5107 24.9217,55.5108 24.9217,55.5108 24.9217,55.5109 24.9217,55.5117 24.9219,55.5118 24.9219,55.5119 24.9219,55.512 24.9219,55.512 24.9218,55.5121 24.9217,55.5121 24.9215,55.512 24.9212,55.5119 24.9212,55.5118 24.9211,55.5106 24.9206,55.5105 24.9206,55.5105 24.9206,55.5105 24.9206,55.5105 24.9205,55.5105 24.9204,55.5105 24.9204,55.5106 24.9205,55.5108 24.9206,55.5109 24.9207,55.5113 24.9209,55.5119 24.9212,55.512 24.9212,55.512 24.9213,55.5121 24.9215,55.5121 24.9215,55.5122 24.9216,55.5122 24.9216,55.5124 24.9215,55.5125 24.9214,55.5126 24.9213,55.5127 24.9213,55.5127 24.9213,55.5127 24.9213,55.5127 24.9214,55.5127 24.9214,55.5127 24.9214,55.5126 24.9214,55.5126 24.9213,55.5126 24.9212,55.5125 24.9211,55.5125 24.9212,55.5125 24.9212,55.5125 24.9213,55.5125 24.9214,55.5124 24.9215,55.5117 24.9219,55.5116 24.9219,55.5115 24.9219,55.5111 24.9217,55.5104 24.9212,55.5102 24.9211,55.5102 24.9211,55.5102 24.9211,55.5102 24.921,55.5102 24.9209,55.5101 24.9208,55.5101 24.9208,55.5098 24.9206,55.4964 24.9138,55.4946 24.9129,55.4941 24.9128,55.4938 24.9126,55.4937 24.9126,55.4937 24.9126,55.4937 24.9126,55.4936 24.9126,55.4935 24.9123,55.4934 24.9122,55.4934 24.9121,55.4933 24.912,55.4931 24.9119,55.493 24.9119,55.4929 24.9119,55.4928 24.9119,55.4925 24.9124,55.4924 24.9124,55.4922 24.9124,55.4921 24.9125,55.492 24.9125,55.4906 24.9147,55.4906 24.9148,55.4906 24.9149,55.4922 24.9157,55.4922 24.9158,55.4908 24.9179,55.4907 24.9179,55.4906 24.9179,55.4899 24.9176,55.4898 24.9176,55.4897 24.9177,55.4889 24.919,55.4888 24.919,55.4887 24.919,55.4887 24.919,55.4879 24.9185,55.4879 24.9184,55.4879 24.9183,55.488 24.9181,55.4886 24.9172,55.4887 24.9171,55.4888 24.9171,55.4894 24.9173,55.4906 24.9179,55.4907 24.9179,55.4908 24.9179,55.4922 24.9158,55.4921 24.9157,55.4906 24.9148,55.4906 24.9148,55.4906 24.9147,55.492 24.9125,55.4921 24.9124,55.4922 24.9124,55.4924 24.9124,55.4925 24.9124,55.4926 24.9123,55.4929 24.9118,55.4929 24.9117,55.4923 24.91,55.4923 24.9094,55.4924 24.9088,55.4926 24.9082,55.4932 24.9075,55.4937 24.907,55.4945 24.9066,55.4951 24.9064,55.4958 24.9063,55.4965 24.9063,55.4975 24.9066,55.4982 24.907,55.499 24.9077,55.5109 24.9203,55.5112 24.9206,55.5113 24.9207,55.5114 24.9207,55.5117 24.9207,55.5119 24.9206,55.5121 24.9206,55.5123 24.9207,55.5124 24.9207,55.513 24.9212,55.513 24.9213,55.513 24.9215,55.5129 24.9215,55.5128 24.9216,55.5127 24.9216,55.5126 24.9216,55.5125 24.9215,55.5126 24.9214,55.5126 24.9214,55.5127 24.9213,55.5127 24.9213,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5127 24.9212,55.5126 24.9212,55.5125 24.9212,55.5125 24.9214,55.5125 24.9214,55.5124 24.9214,55.5123 24.9214,55.5108 24.9207,55.5106 24.9206,55.5106 24.9206,55.5106 24.9206,55.5107 24.9206,55.5109 24.9207,55.511 24.9208,55.512 24.9213,55.5121 24.9213,55.5121 24.9214,55.5121 24.9215,55.5119 24.9217,55.5118 24.9218,55.5118 24.9218,55.5117 24.9217,55.5117 24.9217,55.5116 24.9216,55.5117 24.9215,55.5117 24.9214,55.5119 24.9213,55.5119 24.9212,55.5119 24.9212,55.511 24.9208,55.5074 24.917,55.498 24.9073,55.4975 24.907,55.4968 24.9068,55.4966 24.9067,55.4955 24.9067,55.4947 24.9069,55.4938 24.9073,55.4934 24.9077,55.4931 24.9081,55.4927 24.9089,55.4926 24.9095,55.4926 24.9101,55.4929 24.9109,55.4933 24.9116,55.494 24.9122,55.5032 24.9168,55.5042 24.9173,55.5044 24.9175,55.5119 24.9212,55.512 24.9213,55.512 24.9215,55.512 24.9216,55.5118 24.9219,55.5117 24.9219,55.5116 24.9219,55.511 24.9215,55.5097 24.9207,55.5096 24.9207,55.5094 24.9207,55.5093 24.9207,55.5093 24.9208,55.5092 24.921,55.5092 24.921,55.5092 24.9211,55.5092 24.9211,55.5092 24.9211,55.5092 24.9211,55.509 24.9212,55.509 24.9211,55.509 24.9211,55.509 24.921,55.5093 24.9208,55.5094 24.9207,55.5096 24.9207,55.5097 24.9207,55.5106 24.9213,55.511 24.9217,55.5112 24.9221,55.5112 24.9222,55.5112 24.9223,55.5026 24.9357,55.495 24.9475,55.495 24.9476,55.4951 24.9477,55.4954 24.948,55.4972 24.9496,55.4973 24.9498,55.4973 24.9499,55.4965 24.9512,55.4965 24.9514,55.4966 24.9514,55.4967 24.9515,55.497 24.9518,55.5001 24.9535,55.5003 24.9536,55.5006 24.9536,55.5007 24.9535,55.5009 24.9534,55.501 24.9534,55.501 24.9535,55.5009 24.9536,55.5005 24.9536,55.5003 24.9536,55.5 24.9536,55.4995 24.9534,55.4993 24.9534,55.4991 24.9533,55.4978 24.9525,55.4977 24.9525,55.4976 24.9526,55.4902 24.9642,55.4895 24.9676,55.4895 24.9678,55.4894 24.9679,55.4893 24.968,55.4885 24.969,55.4883 24.9692,55.4881 24.9693,55.4861 24.9694,55.4859 24.9695,55.4791 24.9789,55.4789 24.979,55.4788 24.9789,55.4769 24.9778,55.4766 24.9775,55.4766 24.9773,55.4767 24.9769,55.4769 24.9765,55.477 24.9764,55.477 24.9764)')
SELECT dbo.UDF_CreateGeometryFromString(#string);

TypeError: render is not a function while using React Context along with React Router

I need to set up a user state that can be called from different components. This setup uses React Router and React Context.
The React context contains just a single state that keeps track of the user's name.
At the top-level i.e App I have passed all the children on to the provider. But I get an error
TypeError: render is not a function
My UserContext code:
const UserContext = createContext();
export const UserProvider = (props) => {
const [user, setUser] = useState("");
return (
<UserContext.Provider value={[user, setUser]}>
{props.children}
</UserContext.Provider>
);
};
export default UserContext;
My App code :
function App() {
return (
<UserProvider>
<Router>
<div>
<Nav />
<Switch>
<Route exact path="/" component={Signup} />
<Route exact path="/signin" component={SignIn} />
<Route path="/register" component={UserRegister} />
<Route path="/homepage/:user" component={Homepage} />
</Switch>
</div>
</Router>
</UserProvider>
);
}
export default App;
The entrie error log:
TypeError: render is not a function
updateContextConsumer
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:18747
18744 | {
18745 | ReactCurrentOwner$1.current = workInProgress;
18746 | setIsRendering(true);
> 18747 | newChildren = render(newValue);
| ^ 18748 | setIsRendering(false);
18749 | } // React DevTools reads this flag.
18750 |
View compiled
beginWork
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:19114
19111 | return updateContextProvider(current, workInProgress, renderLanes);
19112 |
19113 | case ContextConsumer:
> 19114 | return updateContextConsumer(current, workInProgress, renderLanes);
| ^ 19115 |
19116 | case MemoComponent:
19117 | {
View compiled
HTMLUnknownElement.callCallback
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:3945
3942 | function callCallback() {
3943 | didCall = true;
3944 | restoreAfterDispatch();
> 3945 | func.apply(context, funcArgs);
| ^ 3946 | didError = false;
3947 | } // Create a global error event handler. We use this to capture the value
3948 | // that was thrown. It's possible that this error handler will fire more
View compiled
invokeGuardedCallbackDev
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:3994
3991 | // errors, it will trigger our global error handler.
3992 |
3993 | evt.initEvent(evtType, false, false);
> 3994 | fakeNode.dispatchEvent(evt);
| ^ 3995 |
3996 | if (windowEventDescriptor) {
3997 | Object.defineProperty(window, 'event', windowEventDescriptor);
View compiled
invokeGuardedCallback
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:4056
4053 | function invokeGuardedCallback(name, func, context, a, b, c, d, e, f) {
4054 | hasError = false;
4055 | caughtError = null;
> 4056 | invokeGuardedCallbackImpl$1.apply(reporter, arguments);
4057 | }
4058 | /**
4059 | * Same as invokeGuardedCallback, but instead of returning an error, it stores
View compiled
beginWork$1
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:23964
23961 | } // Run beginWork again.
23962 |
23963 |
> 23964 | invokeGuardedCallback(null, beginWork, null, current, unitOfWork, lanes);
| ^ 23965 |
23966 | if (hasCaughtError()) {
23967 | var replayError = clearCaughtError(); // `invokeGuardedCallback` sometimes sets an expando `_suppressLogging`.
View compiled
performUnitOfWork
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:22776
22773 |
22774 | if ( (unitOfWork.mode & ProfileMode) !== NoMode) {
22775 | startProfilerTimer(unitOfWork);
> 22776 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes);
| ^ 22777 | stopProfilerTimerIfRunningAndRecordDelta(unitOfWork, true);
22778 | } else {
22779 | next = beginWork$1(current, unitOfWork, subtreeRenderLanes);
View compiled
workLoopSync
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:22707
22704 | function workLoopSync() {
22705 | // Already timed out, so perform work without checking if we need to yield.
22706 | while (workInProgress !== null) {
> 22707 | performUnitOfWork(workInProgress);
22708 | }
22709 | }
22710 |
View compiled
renderRootSync
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:22670
22667 |
22668 | do {
22669 | try {
> 22670 | workLoopSync();
| ^ 22671 | break;
22672 | } catch (thrownValue) {
22673 | handleError(root, thrownValue);
View compiled
performSyncWorkOnRoot
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:22293
22290 | }
22291 | } else {
22292 | lanes = getNextLanes(root, NoLanes);
> 22293 | exitStatus = renderRootSync(root, lanes);
| ^ 22294 | }
22295 |
22296 | if (root.tag !== LegacyRoot && exitStatus === RootErrored) {
View compiled
scheduleUpdateOnFiber
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:21881
21878 | // root inside of batchedUpdates should be synchronous, but layout updates
21879 | // should be deferred until the end of the batch.
21880 |
> 21881 | performSyncWorkOnRoot(root);
| ^ 21882 | } else {
21883 | ensureRootIsScheduled(root, eventTime);
21884 | schedulePendingInteractions(root, lane);
View compiled
updateContainer
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:25482
25479 | }
25480 |
25481 | enqueueUpdate(current$1, update);
> 25482 | scheduleUpdateOnFiber(current$1, lane, eventTime);
25483 | return lane;
25484 | }
25485 | function getPublicRootInstance(container) {
View compiled
(anonymous function)
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:26021
26018 |
26019 |
26020 | unbatchedUpdates(function () {
> 26021 | updateContainer(children, fiberRoot, parentComponent, callback);
| ^ 26022 | });
26023 | } else {
26024 | fiberRoot = root._internalRoot;
View compiled
unbatchedUpdates
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:22431
22428 | executionContext |= LegacyUnbatchedContext;
22429 |
22430 | try {
> 22431 | return fn(a);
| ^ 22432 | } finally {
22433 | executionContext = prevExecutionContext;
22434 |
View compiled
legacyRenderSubtreeIntoContainer
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:26020
26017 | } // Initial mount should not be batched.
26018 |
26019 |
> 26020 | unbatchedUpdates(function () {
| ^ 26021 | updateContainer(children, fiberRoot, parentComponent, callback);
26022 | });
26023 | } else {
View compiled
render
G:/WebDevelopmentFolder/trinkerrchallenge/node_modules/react-dom/cjs/react-dom.development.js:26103
26100 | }
26101 | }
26102 |
> 26103 | return legacyRenderSubtreeIntoContainer(null, element, container, false, callback);
26104 | }
26105 | function unstable_renderSubtreeIntoContainer(parentComponent, element, containerNode, callback) {
26106 | if (!isValidContainer(containerNode)) {
View compiled
Module.<anonymous>
G:/WebDevelopmentFolder/trinkerrchallenge/src/index.js:6
3 | import "./index.css";
4 | import App from "./App";
5 |
> 6 | ReactDOM.render(
7 | <React.StrictMode>
8 | <App />
9 | </React.StrictMode>,
View compiled
Module../src/index.js
http://localhost:3000/static/js/main.chunk.js:1581:30
__webpack_require__
G:/WebDevelopmentFolder/trinkerrchallenge/webpack/bootstrap:851
848 |
849 | __webpack_require__.$Refresh$.init();
850 | try {
> 851 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 852 | } finally {
853 | __webpack_require__.$Refresh$.cleanup(moduleId);
854 | }
View compiled
fn
G:/WebDevelopmentFolder/trinkerrchallenge/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
1
http://localhost:3000/static/js/main.chunk.js:1595:18
__webpack_require__
G:/WebDevelopmentFolder/trinkerrchallenge/webpack/bootstrap:851
848 |
849 | __webpack_require__.$Refresh$.init();
850 | try {
> 851 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 852 | } finally {
853 | __webpack_require__.$Refresh$.cleanup(moduleId);
854 | }
View compiled
checkDeferredModules
G:/WebDevelopmentFolder/trinkerrchallenge/webpack/bootstrap:45
42 | }
43 | if(fulfilled) {
44 | deferredModules.splice(i--, 1);
> 45 | result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
| ^ 46 | }
47 | }
48 |
View compiled
Array.webpackJsonpCallback [as push]
G:/WebDevelopmentFolder/trinkerrchallenge/webpack/bootstrap:32
29 | deferredModules.push.apply(deferredModules, executeModules || []);
30 |
31 | // run deferred modules when all chunks ready
> 32 | return checkDeferredModules();
| ^ 33 | };
34 | function checkDeferredModules() {
35 | var result;

Upgrading react-scripts to 4.x.x breaks my app

I have been developing a frontend app using React (v16.44.0, cannot upgrade to v17 yet due to a dependency), react-scripts v3.4.4, Typescript (v3.9.9) and React-Bootstrap (v1.5.1) for a few months and all is going well.
However, react-scripts have been updated recently to a v4, and upgrading breaks the whole app. I am concerned with securities issues with react-scripts v3. I also would like to upgrade Typescript to v4+, there seem to be an incompatibility btw Typescript 4 and react-scripts 3 related to eslint. Various deprecation warnings are also stacking up.
When I enable react-scripts v4.0.3, run npm start to launch the development server, Firefox (v78.8) throws:
"ReferenceError: SharedArrayBuffer is not defined" in "node_modules/webidl-conversions/lib/index.js:347".
Apparently webidl-conversions is required by bootstrap. I have searched about the SharedArrayBuffer issue, apparently it requires enabling additional headers, but I could not find how to add them using the npm start webserver.
[Edit: upgraded Firefox to v86, still have the issue but I have not tried to configure it yet.]
If I try with Chrome (v89), I have:
"TypeError: Cannot convert undefined or null to object" on "node_modules/whatwg-url/dist/utils.js:48"
which also seem to be required by Bootstrap.
I do not have a dependency on Bootstrap per se, I use the react-bootstrap implementation. However, I use bootstrap-scss for the (S)CSS part.
I can upload full stack traces if needed. Here is my package.json:
{
"name": "ab-concept-backoffice",
"version": "42.0.0",
"private": true,
"dependencies": {
"#fortawesome/fontawesome-svg-core": "^1.2.34",
"#fortawesome/free-regular-svg-icons": "^5.15.2",
"#fortawesome/free-solid-svg-icons": "^5.15.2",
"#fortawesome/react-fontawesome": "^0.1.14",
"bootstrap-scss": "^4.6.0",
"classnames": "^2.2.6",
"date-fns": "^2.17.0",
"filesize": "^6.1.0",
"flux": "^4.0.1",
"immutable": "^4.0.0-rc.12",
"jsdom": "^16.5.1",
"lz-string": "^1.4.4",
"monet": "^0.9.1",
"query-string": "^6.14.0",
"react": "^16.14.0",
"react-autosuggest": "^10.1.0",
"react-bootstrap": "^1.5.1",
"react-color": "^2.19.3",
"react-cookie": "^4.0.3",
"react-day-picker": "^7.4.8",
"react-dom": "^16.14.0",
"react-gravatar": "^2.6.3",
"react-html5-camera-photo": "^1.5.4",
"react-number-format": "^4.4.4",
"react-phone-number-input": "^3.1.16",
"react-process-string": "^1.2.0",
"react-router-dom": "^5.2.0",
"react-scripts": "^4.0.3",
"react-select": "^4.1.0",
"react-sketch": "^0.5.1",
"react-three-state-checkbox": "^1.3.4"
},
"scripts": {
"analyze": "source-map-explorer 'build/static/js/*.js'",
"start": "react-scripts start",
"build": "npm version patch && react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app"
]
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
],
"devDependencies": {
"#types/classnames": "^2.2.11",
"#types/humanize-duration": "^3.18.0",
"#types/lz-string": "^1.3.34",
"#types/md5": "^2.3.0",
"#types/node": "^14.14.31",
"#types/react": "^17.0.2",
"#types/react-autosuggest": "^10.1.2",
"#types/react-color": "^3.0.4",
"#types/react-gravatar": "^2.6.8",
"#types/react-phone-number-input": "^3.0.6",
"#types/react-router-dom": "^5.1.7",
"#types/react-select": "^4.0.13",
"sass": "^1.32.8",
"typescript": "^4.2.3"
}
}
Firefox stack trace:
ReferenceError: SharedArrayBuffer is not defined
./node_modules/webidl-conversions/lib/index.js
node_modules/webidl-conversions/lib/index.js:347
344 |
345 | const abByteLengthGetter =
346 | Object.getOwnPropertyDescriptor(ArrayBuffer.prototype, "byteLength").get;
> 347 | const sabByteLengthGetter =
348 | Object.getOwnPropertyDescriptor(SharedArrayBuffer.prototype, "byteLength").get;
349 |
350 | function isNonSharedArrayBuffer(V) {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
./node_modules/whatwg-url/dist/URL.js
node_modules/whatwg-url/dist/URL.js:3
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
./node_modules/whatwg-url/webidl2js-wrapper.js
node_modules/whatwg-url/webidl2js-wrapper.js:3
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
./node_modules/whatwg-url/index.js
node_modules/whatwg-url/index.js:3
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
1
http://localhost:3000/static/js/main.chunk.js:39420:18
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
checkDeferredModules
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:45
42 | }
43 | if(fulfilled) {
44 | deferredModules.splice(i--, 1);
> 45 | result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
| ^ 46 | }
47 | }
48 |
webpackJsonpCallback
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:32
29 | deferredModules.push.apply(deferredModules, executeModules || []);
30 |
31 | // run deferred modules when all chunks ready
> 32 | return checkDeferredModules();
| ^ 33 | };
34 | function checkDeferredModules() {
35 | var result;
(anonymous function)
http://localhost:3000/static/js/main.chunk.js:1:95
Chrome stack trace:
TypeError: Cannot convert undefined or null to object
./node_modules/whatwg-url/dist/utils.js
node_modules/whatwg-url/dist/utils.js:48
45 |
46 | const iterInternalSymbol = Symbol("internal");
47 | const IteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));
> 48 | const AsyncIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf(async function* () {}).prototype);
49 |
50 | function isArrayIndexPropName(P) {
51 | if (typeof P !== "string") {
View compiled
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
./node_modules/whatwg-url/dist/URL.js
node_modules/whatwg-url/dist/URL.js:4
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
./node_modules/whatwg-url/webidl2js-wrapper.js
node_modules/whatwg-url/webidl2js-wrapper.js:3
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
./node_modules/whatwg-url/index.js
node_modules/whatwg-url/index.js:3
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
▶ 2 stack frames were collapsed.
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
fn
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:150
147 | );
148 | hotCurrentParents = [];
149 | }
> 150 | return __webpack_require__(request);
| ^ 151 | };
152 | var ObjectFactory = function ObjectFactory(name) {
153 | return {
View compiled
1
http://localhost:3000/static/js/main.chunk.js:39420:18
__webpack_require__
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:856
853 |
854 | __webpack_require__.$Refresh$.init();
855 | try {
> 856 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 857 | } finally {
858 | __webpack_require__.$Refresh$.cleanup(moduleId);
859 | }
View compiled
checkDeferredModules
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:45
42 | }
43 | if(fulfilled) {
44 | deferredModules.splice(i--, 1);
> 45 | result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
| ^ 46 | }
47 | }
48 |
View compiled
Array.webpackJsonpCallback [as push]
/home/vion/workspace/ab-concept-frontend/webpack/bootstrap:32
29 | deferredModules.push.apply(deferredModules, executeModules || []);
30 |
31 | // run deferred modules when all chunks ready
> 32 | return checkDeferredModules();
| ^ 33 | };
34 | function checkDeferredModules() {
35 | var result;
View compiled
(anonymous function)
http://localhost:3000/static/js/main.chunk.js:1:95
It's hard to tell exactly without your full package.json, but it seems that it's not related to the update of react-scripts itself, but instead probably an updgrade on another library that you are depending on that uses SharedArrayBuffer which is not supported in Firefox v78
Edit: OP found out that the problematic package was react-sketch
As per the other error, it seems to be related, but don't know exactly why it happens. Anyhow, found this issue in their Github page and one suggestion is to upgrade jsdom to version >=16.3 (if you are using it)
Did you apply each migration described in the changelog?
They also suggest you delete node_modules if you break your app when updating from 3.4 to 4.
NOTE: You may need to delete your node_modules folder and reinstall your dependencies by running yarn (or npm install) if you encounter errors after upgrading.
Try deleting it and running npm install
You can download Bootstrap CSS files manually and save them in project files.
Try:
Deleting your node_modules and package-lock.json
// This normally fixes my issue when going back to old react projects
npm cache clean --force
run npm install
run npm run start

Bug with react-accessible-accordion

Im using the following npm librarie :
"react-accessible-accordion": "2.3.1",
it is returning an error to me :
ReferenceError: babelHelpers is not defined
(anonymous function)
C:/Users/tabm005/www/node_modules/react-accessible-accordion/dist/umd/index.js:1037
1034 |
1035 | var createReactContext = unwrapExports(lib);
1036 |
> 1037 | var _typeof = typeof Symbol === "function" && babelHelpers.typeof(Symbol.iterator) === "symbol" ? function (obj) {
1038 | return typeof obj === 'undefined' ? 'undefined' : babelHelpers.typeof(obj);
1039 | } : function (obj) {
1040 | return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj === 'undefined' ? 'undefined' : babelHelpers.typeof(obj);
View compiled
./node_modules/react-accessible-accordion/dist/umd/index.js.React__default
http://localhost:3000/static/js/bundle.js:121672:10
121669 | /***/ (function(module, exports, __webpack_require__) {
121670 |
121671 | (function (global, factory) {
> 121672 | true ? factory(exports, __webpack_require__(/*! react */ "./node_modules/react/index.js")) :
| ^ 121673 | typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :
121674 | (factory((global.reactAccessibleAccordion = {}),global.React));
121675 | }(this, (function (exports,React) { 'use strict';
View source
./node_modules/react-accessible-accordion/dist/umd/index.js
C:/Users/tabm005/www/node_modules/react-accessible-accordion/dist/umd/index.js:5
2 | typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
3 | typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :
4 | (factory((global.reactAccessibleAccordion = {}),global.React));
> 5 | }(this, (function (exports,React) { 'use strict';
6 |
7 | var React__default = 'default' in React ? React['default'] : React;
8 |
View compiled
__webpack_require__
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:678
675 | };
676 |
677 | // Execute the module function
> 678 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
679 |
680 | // Flag the module as loaded
681 | module.l = true;
View compiled
fn
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:88
85 | console.warn("[HMR] unexpected require(" + request + ") from disposed module " + moduleId);
86 | hotCurrentParents = [];
87 | }
> 88 | return __webpack_require__(request);
89 | };
90 | var ObjectFactory = function ObjectFactory(name) {
91 | return {
View compiled
./src/components/Summary/summaryAccordion.js
http://localhost:3000/static/js/bundle.js:198742:85
__webpack_require__
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:678
675 | };
676 |
677 | // Execute the module function
> 678 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
679 |
680 | // Flag the module as loaded
681 | module.l = true;
View compiled
fn
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:88
85 | console.warn("[HMR] unexpected require(" + request + ") from disposed module " + moduleId);
86 | hotCurrentParents = [];
87 | }
> 88 | return __webpack_require__(request);
89 | };
90 | var ObjectFactory = function ObjectFactory(name) {
91 | return {
View compiled
./src/components/stepsFormsContainer/stepsFormsContainer.js
http://localhost:3000/static/js/bundle.js:206311:84
__webpack_require__
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:678
675 | };
676 |
677 | // Execute the module function
> 678 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
679 |
680 | // Flag the module as loaded
681 | module.l = true;
View compiled
fn
C:/Users/tabm005/www/webpack/bootstrap ad42cbaf3c46aaff76f3:88
85 | console.warn("[HMR] unexpected require(" + request + ") from disposed module " + moduleId);
86 | hotCurrentParents = [];
87 | }
> 88 | return __webpack_require__(request);
89 | };
90 | var ObjectFactory = function ObjectFactory(name) {
91 | return {
View compiled
./src/components/stepsFormsContainer/index.js
C:/Users/tabm005/www/src/components/stepsFormsContainer/index.js:1
> 1 | import StepsFormsContainer from './stepsFormsContainer';
2 |
3 | export default StepsFormsContainer;
4 |
View compiled
▶ 5 stack frames were collapsed.
./src/components/stepperManager/index.js
C:/Users/tabm005/www/src/components/stepperManager/index.js:1
> 1 | import StepperManager from './stepperManager';
2 |
3 | export default StepperManager;
4 |
View compiled
▶ 12 stack frames were collapsed.
This screen is visible only in development. It will not appear if the app crashes in production.
Open your browser’s developer console to further inspect this error.
I tried several manipulations : remove my node_modules and package-lock.json and re-install the application. I tried a newer version of accordion too and no solution worked for me.
Any Idea ?
I added the babel librairies and that resolved my problem:
"babel": "^6.23.0",
"babel-core": "^6.26.3"

camel-ftp intermittent issue

I am using camel-ftp component to upload a file into a server. I get the below exception randomly and ftp stops abruptly what could be the issue. appreciate any pointers.
The camel version I am using is 2.10.1
|Caused by: org.apache.camel.component.file.GenericFileOperationFailedException: Cannot store file: 8000211d-5f40-4bac-920a-a2e5f2575870.gpg
| at org.apache.camel.component.file.remote.SftpOperations.doStoreFile(SftpOperations.java:716)
| at org.apache.camel.component.file.remote.SftpOperations.storeFile(SftpOperations.java:649)
| at org.apache.camel.component.file.GenericFileProducer.writeFile(GenericFileProducer.java:249)
| at org.apache.camel.component.file.GenericFileProducer.processExchange(GenericFileProducer.java:151)
| at org.apache.camel.component.file.remote.RemoteFileProducer.process(RemoteFileProducer.java:49)
| at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:120)
| at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:292)
| at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:115)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
| at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:81)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
| at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122)
| at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:120)
| at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:292)
| at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:115)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
| at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:81)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
| at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
| at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
| at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122)
| at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
| at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
| at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)
| at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
| at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
| at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
| at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
| at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63)
| at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:360)
| at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:331)
| at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:227)
| at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:331)
| at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:186)
| at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:115)
| at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:119)
| ... 59 more
|Caused by: 4: java.io.IOException: Pipe closed
| at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:500)
| at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:454)
| at org.apache.camel.component.file.remote.SftpOperations.doStoreFile(SftpOperations.java:701)
| ... 180 more
|Caused by: java.io.IOException: Pipe closed
| at java.io.PipedInputStream.read(PipedInputStream.java:291)
| at com.jcraft.jsch.Channel$MyPipedInputStream.updateReadSide(Channel.java:344)
| at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:466)
Since you mention that you have been able to do the operation successful at times, permission issue might not be there. Not sure if it could be a storage space issue, etc.
I suggest that the best way would be to try to debug via the source code for the version that you are using. You will find the exception being thrown in org.apache.camel.component.file.remote.FtpOperations Java class and the IOException is getting wrapped over there.
However, having said that - you could possibly look at having a Global Error Handler too. Here is an article that explains how: http://java.dzone.com/articles/camel-exception-handling . It could help in understanding what went wrong exactly.

Resources