@Muhamed Cicak abi, wire transfer sent. Thank you.
👍 1
M
Muhamed Cicak
Azlan SarwarHere’s the meeting invite in case you didn’t get the email.
Aug 5 · 3–3:30 PM View details & RSVP https://calendar.app.google/2ntcgUF6KJBnBHc8A
accepted as well
Mohammed Elyas@Muhamed Cicak abi, wire transfer sent. Thank you.
@Muhamed Cicak i might need your help to track down the root cause
This is a critical issue. I found the problem. The last wo, cus, and inv ids are not being updated by the data migration
We need to fix this asap because migrated customers, work orders, and invoices are being overwritten
M
Mohammed Elyas
Azlan SarwarWe need to fix this asap because migrated customers, work orders, and invoices are being overwritten
@all Guys, we need to get in front of this right away. We cannot risk hundreds of customers having their work orders, customers, or invoices overwritten. Can we handle this in two phases? First, we need a quick fix for everyone we migrated recently. I believe we had this same issue with the data migration routine before. We reported it, and it was fixed, but it looks like the bug may have come back with a newer update. Please check the history on switchmydata.com and go back two weeks. There should not be more than 15 customers. Let’s manually update the correct last work order, customer, and invoice IDs for all of them. Second, we need to fix this in two separate places so we have a backup if the migration issue happens again. One fix should be in the data migration process itself. The other should be on the application side. Whether that requires JavaScript, PHP, AWS Python, or something else, we need a separate check whenever someone creates an order to make sure we are not overwriting an existing work order, customer, or invoice. This is a critical issue, so please let’s get in front of it and make sure we have protection in both places.
A
Azlan Sarwar
I just checked a migration that was done last night and the ids were all correct. Maybe there was a specific window where the ids didn't update? Either way, i'm implementing a guard on the aws side so that work orders, invoices, and customers cannot be overwritten
❤️ 2
M
Muhamed Cicak
Sorry guys I was moving in for the last 2 days to a different apartment
Just saw the messages
Is there anything I should do here @Azlan Sarwar ?
A
Azlan Sarwar
YouIs there anything I should do here @Azlan Sarwar ?
Would you mind just double checking the id reservation code to see if it’s working properly
Also make sure that users can use the software normally while a migration is happening without any ids being overwritten
From my findings, there was a customer who couldn’t create invoices yesterday because their invoice id was off by 1. So the last id value was like 5000 but the actual value should been 5001. The create_data lambda couldn’t create any new invoices because the primary key exists condition kept failing. The user who complained today had all their last ids at 1000 or 999 even after a full data migration
Friday
M
Mohammed Elyas
@all what's out solution for this?
@Muhamed Cicak abi, what's the link to the sheet, please?
M
Muhamed Cicak
Mohammed Elyas@all what's out solution for this?
I read this abo but I need to check it, Ive been very busy with moving house. I will look into it over the weekend and will prioritize it
I already implemented the solution where wo, inv, cus can’t get overwritten
Saturday
M
Muhamed Cicak
@Azlan Sarwar Hey Azlan, I went through your ID reservation code. The reservation endpoint itself is fine, atomic update, no race there. One spot isn't covered yet: the normal create flow doesn't go through it. It still reads the last ID, increments it in PHP, then calls Lambda, so a create during a migration can write an old counter value back over the reserved one, and if Lambda rejects a duplicate ID the counter doesn't move, so retries keep using the same ID and the customer gets stuck. I pulled your reservation query into a shared helper and had the normal creates use it too, in wp-templates #1090 and aws-infrastructure #289. Your endpoint calls the same helper now, so both paths reserve identically. The counter still lives in WP post meta; it just moves at reservation time instead of after the Lambda call. A failed Lambda call can leave a small gap in the numbering, but that's harmless compared to reusing an ID. I also added the replace-in-progress endpoint your migration tool was calling, so live creates are blocked during a replace instead of racing it.
Thank you. I made an update, see here. For task #161, if you can do it for up to $150, go ahead and proceed with it. If more, let's discuss it first. Edited
@all Hi guys, I’d like to discuss how we’re going to move forward with Aslan’s new search engine process and come up with a timeline that works with everyone’s schedule. I’m not 100% sure it will be completely bug free, and we may not know until we push it into production. If bugs do come up, I want us to be able to address and fix them as quickly as possible. Please let me know your availability over the next five days so we can coordinate when to start rolling this out. I’d also like to see if we can schedule a quick call every two days at a set time. Even if the call only takes five minutes, it would be helpful to have a regular time when we know everyone is expected to be available. Please let me know what works for you.
A
Azlan Sarwar
I’ll be mostly available for the next 3 days but will have limited availability between aug 18 - sep 1 Edited
Sunday
M
Muhamed Cicak
We can do Tuesday then?
Mohammed Elyas@all Hi guys, I’d like to discuss how we’re going to move forward with Aslan’s new search engine process and come up with a timeline that works with everyone’s schedule.
I’m not 100% sure it will be completely bug free, and we may not know until we push it into production. If bugs do come up, I want us to be able to address and fix them as quickly as possible.
Please let me know your availability over the next five days so we can coordinate when to start rolling this out.
I’d also like to see if we can schedule a quick call every two days at a set time. Even if the call only takes five minutes, it would be helpful to have a regular time when we know everyone is expected to be available.
Please let me know what works for you.
Also sure abi, a meeting once every two days works for me, just if we can have it spontaneously set up rather than a fixed time, that'd be great
M
Mohammed Elyas
YouAlso sure abi, a meeting once every two days works for me, just if we can have it spontaneously set up rather than a fixed time, that'd be great
I think making it spontaneous defeats the purpose. The goal is to have a fixed time every two days when everyone knows in advance to be available for a quick less than five minute check in. That way, we do not have to coordinate schedules each time. We do not have to be at the computer or on screen. We can simply join from the phone for less than a five minute call so we can quickly check in, get an update on something, or ask a quick question.
M
Muhamed Cicak
Sure abi that works, joining over the phone simplifies things
When should we say, sometime morning EST time?
M
Mohammed Elyas
Whatever time works for everyone. Let me send a lettucemeet link and we can pick times from there.
Mohammed Elyas@all guys, I have some critical issues I need both your helps. I highlighted in color which is for whom. Can you guys help me with these ASAP, please?
See link for more details:
https://basecamp.com/2323669/projects/19759117/todolists/72435592
https://basecamp.com/2323669/projects/19759117/todos/519021933 Hi abi, this one is already done. I adjusted the customer name so it fits properly. If you want, You can also switch it to pdfme and widen the customer name column while shrinking description and the other columns.
👍 1
Mohammed Elyas@Muhamed Cicak abi, can you help us with this data migration bug?
https://basecamp.com/2323669/projects/19759117/todos/519590474#comment_977394032
Hi abi, I replied on basecamp
Azlan Sarwar@Muhamed Cicak make sure to put the basecamp link for the task in your PRs so I know if we need to add any new pages or reports
I always do, have I forgotten to put it somewhere?
Mohammed ElyasAlso, you can quote this project:
https://basecamp.com/2323669/projects/19759117/todos/519587415
Create an Integrated Customer Support Ticket, Video Submission, Tracking, and Task Creation Process
@Muhamed Cicak abi, do you have time for a call today? I want to ask you about the time frame for some of these critical bug issues?
M
Muhamed Cicak
Hi abi, sorry I had to leave house urgently today. I won't be able to make it today but I can do a call tomorrow afternoon. Would that suit you? 3PM EST?
M
Mohammed Elyas
Sure, I wanted to see if you had any progress on the customer reported bugs?
Sure will take a look And let me know when is a good time for a call for you tomorrow abi
M
Mohammed Elyas
YouSure will take a look
And let me know when is a good time for a call for you tomorrow abi
3 pm NYC time works for me. Please send me a calendar invite.
Yesterday
M
Muhamed Cicak
Perfect, sending right ow
M
Mohammed Elyas
He said we can merge WP PRs but the AWS ones were different. Do you know what he needs to do? and can you help me do it for the AWS merges if I can find his passwords?
M
Muhamed Cicak
Hmm I will need to take a look at it because I dont know whats the exact deploy process for the backend
but I can try figuring it out
I would need his credentials for AWS though
Also just an FYI if you can contact him, he can use VPN and/or a Hong Kong eSIM in China to access google services and the internet. Thats what I did last time I was there, worked like a charm
M
Mohammed Elyas
YouAlso just an FYI if you can contact him, he can use VPN and/or a Hong Kong eSIM in China to access google services and the internet. Thats what I did last time I was there, worked like a charm
He will try. I use VPN in China too and it worked so we will see.
@Muhamed Cicak abi, do you mind linking to Basecamp tasks for each PR when you open a PR. It will be a lot simpler for us to test them knowing what to test for. Edited
I can't test a lot of these pending PRs because they are not cross referenced to a Basecamp task. Can you help me, please?
this is a critical bug, please remove my store name for other people's printed work orders. This should be their store names, not mine
Mohammed Elyasthis is a critical bug, please remove my store name for other people's printed work orders. This should be their store names, not mine
@Muhamed Cicak
wait.. when did we change the work order templates? lol What's going on? did I forget something?
Thursday
M
Mohammed Elyas
Mohammed Elyaswait.. when did we change the work order templates? lol
What's going on? did I forget something?
M
Muhamed Cicak
Mohammed Elyas@Muhamed Cicak abi, do you mind linking to Basecamp tasks for each PR when you open a PR. It will be a lot simpler for us to test them knowing what to test for.
Sure abi, will do from now on
❤️ 1
Mohammed Elyasthis is a critical bug, please remove my store name for other people's printed work orders. This should be their store names, not mine
@all I merged a bunch of PRs. I was working up to about an hour ago, the website, and now people are complaining that they can't open work orders. Can you help me out? I'm totally at a loss here. I don't know what to do.
Guys, I have an emergency and need your help. I merged several PRs, and now the website is down. People cannot view their work orders because they are not loading. Can anyone please help me figure out what happened and fix this?
A
Azlan Sarwar
@Muhamed Cicak this users last ids were not updated after a data migration which blocked them from creating new customers, work orders, and invoices. It looks like they were still the default values
YouI also removed this task for now and will put in the next sheet as I need to wait for Azlan's push to be able to give an estimate and do it
https://basecamp.com/2323669/projects/19759117/todos/519354574
@Muhamed Cicak abi, I scheduled the wire transfer to you. Thank you.
Yesterday
M
Muhamed Cicak
Thank you abi!
❤️ 1
M
Mohammed Elyas
YouThank you abi!
Likewise, abi.
@Muhamed Cicak can we have a quick call today or early tomorrow? I have a few issues I need your help with, please.
Mohammed Elyas@Azlan Sarwar I clicked on merge on this AWS PR by mistake. What needed to happen for this to work?
https://github.com/FramingPOS/aws-infrastructure/pull/303
Reconcile sales by category totals- #303#303
Can you help me fix it?
The process is pretty complex for a layman. I’ll revert it for now and deploy it later tonight
M
Mohammed Elyas
Okay, thank you!
M
Muhamed Cicak
Mohammed Elyas@Muhamed Cicak can we have a quick call today or early tomorrow? I have a few issues I need your help with, please.
Hi abi, we can have a call today, what time works for you?
M
Mohammed Elyas
I am on a call now with Yusra, should be done in 20 minutes. When is a good time for you? If you can do it at 7:30 am my time, that would be great.
M
Muhamed Cicak
Hi abi İ can do 8am earliest but İ am outside so İ can do a phone call
M
Mohammed Elyas
your choice, .. I can do a video call at 8 am if you wish, so we can be more productive
Hi @Mohammed Elyas abi For "RUSH Build Vendor Data Collection Interface and Storage Setup" task, I gave an estimate please check it out and tick agreed if it makes sense. I can finish it today within a few hours Edited
Also, in that estimate, I can include encryption for passwords because storing passwords as plain text is not just a bad practice it should straight up never be done abi
So I strongly advise against storing passwords as plain text
A
Azlan Sarwar
I agree about not storing passwords as plain text. Its super easy to encrypt and decrypt stuff using our built in system Edited
M
Mohammed Elyas
YouAlso, in that estimate, I can include encryption for passwords because storing passwords as plain text is not just a bad practice it should straight up never be done abi
I don’t want to spend $200 just to store some customer usernames and passwords. I need something very simple, like using Google Forms or even Google Sheets. Can you come up with a super KISS method to handle this? This has no functionality except to get some user names and passwords. I really don’t want to spend $200 on this task.
A
Azlan Sarwar
We can store the data anywhere we want. Just encrypt the password before storing and decrypt it when retrieving
M
Mohammed Elyas
I’m only collecting user names and passwords. I really meed a super KISS method to do it.
A
Azlan Sarwar
If you're storing it on your own local pc, then its fine to save the passwords as plain text
M
Mohammed Elyas
Azlan SarwarIf you're storing it on your own local pc, then its fine to save the passwords as plain text
In the spirit of the KISS method, the simplest option would be to just store it in wordpress and view it in wp-admin
M
Mohammed Elyas
This interface sits in the settings page for each tenant.
M
Muhamed Cicak
@Mohammed Elyas This hasn't got anything to do with "just to store some customer username and passwords" there is whole UI around it that we build Also whether you store plain or encrypted doesnt move the estimate
$200 is the lowest I can go here, sorry
M
Mohammed Elyas
Understood. Let me think on it. I may change the scope of this task. I’ll get back to you. Thanks.
@all I made a change to the scope of this task. Would any of you have time to help me with this? Add this in the settings page: (links to Google Forms) Sign up for Live Vendor Stock Check https://forms.gle/C3vVvmb5cGAupa6PA
Mohammed Elyas@all I made a change to the scope of this task. Would any of you have time to help me with this?
Add this in the settings page: (links to Google Forms)
Sign up for Live Vendor Stock Check