0:00:24
what is going on guys welcome back to
0:00:27
another session of real breaking fake
0:00:30
brought to you by yours truly the rule
0:00:34
um first of all really happy merry
0:00:37
christmas to everyone um i hope you all
0:00:41
enjoyed the christmas eve with your
0:00:49
good day on the christmas days as well
0:00:59
um yeah um thanks for asking zayn it was
0:01:03
yeah it was all right just i didn't do
0:01:04
much to be honest uh
0:01:06
i just relaxed and um yeah i could spend
0:01:13
fantastic that's really good to hear um
0:01:16
did you do much for the boxing day
0:01:19
uh no not really as well i just um yeah
0:01:23
just went out but yeah i didn't go to
0:01:24
any of the shops or see any of the sales
0:01:27
um i don't know yeah
0:01:29
right right yeah i went and got some as
0:01:32
in i wanted to buy a few stuffs and i
0:01:35
just really approached the directs
0:01:39
direct strategy in which i picked
0:01:42
everything online first
0:01:44
preserved it and then went straight to
0:01:48
shops if i like the material and if it's
0:01:52
perfectly fine i just bought straight
0:01:53
away and then came back
0:01:56
so that was a really productive one but
0:01:59
yeah there were kind of a lot less
0:02:04
than i expected it to be
0:02:06
i think maybe i i did see that as like i
0:02:09
mean i drove past uh
0:02:11
the mall i didn't actually uh stop there
0:02:13
but i did see like the crowd wasn't
0:02:16
really there like yeah two previous
0:02:20
it could be kobet or maybe people over
0:02:23
it as well i don't know
0:02:27
good thing is that the people who wanted
0:02:30
take the advantage took the advantages
0:02:33
and people who wanted to just relaxed
0:02:37
relaxed so that's always good as in in
0:02:40
both scenarios for
0:02:44
and hope the viewers also as in
0:02:49
got done what they plan to on these
0:02:51
three as in two and a half days
0:03:00
the show um just before i proceed i'll
0:03:05
acknowledgement for the traditional
0:03:08
owners of the land so here goes
0:03:13
i begin today by acknowledging the
0:03:15
traditional custodians of the land on
0:03:17
which we gathered today and pay my
0:03:19
respects to the elders past present and
0:03:22
future i extend their respect to
0:03:24
aboriginal and torres strait islander
0:03:34
now that's done so um um i don't know if
0:03:40
if you all guys um
0:03:44
remember where we were but just to give
0:03:53
the day before christmas eve we
0:03:56
did actually play around as in
0:03:59
um try to do the functionality of
0:04:05
gap board by name and
0:04:08
we got to a point where we had to um
0:04:12
install an extension for
0:04:17
we were getting a syntax error
0:04:21
we did that we configured it and um
0:04:26
we go through that part but um
0:04:29
we need to focus on pog going forward
0:04:35
i will just share my screen and share
0:04:38
with you guys where we go up to until
0:04:44
just share my screen hey tory welcome
0:04:47
man good to have you
0:04:54
finish were you naughty this year
0:04:59
hard question man um yeah
0:05:08
um so i'll just open obvious code and
0:05:19
and we can take it from there
0:05:25
um i don't know if you remember
0:05:36
as soon as i installed and configured
0:05:47
colored page surprise for for me
0:05:50
i was like wow all right that is
0:06:01
you can still see now that there are
0:06:07
we won't focus on them at this moment um
0:06:10
i will probably work on them um
0:06:17
which would be next week um
0:06:20
yeah so i was i i kind of had a bit of
0:06:26
so i just continued
0:06:36
that particular board from the dynamodb
0:06:43
and what i found out that there is a bit
0:06:48
because at the moment that we're using
0:06:51
board id as a primary key
0:06:57
overall as in board id is the primary
0:07:04
to bring the board
0:07:10
uh we probably have to create
0:07:14
what's called a gsi on global secondary
0:07:21
can't we do this uh with this one is
0:07:27
query accepts a key
0:07:30
which is our board id obviously but when
0:07:34
we are calling the board and name func
0:07:37
um this gabor by name function in the
0:07:43
we are not gonna at this stage we don't
0:07:55
um have you got any suggestions that we
0:08:05
the first thing i was wondering is uh
0:08:10
why in your key in 165
0:08:16
why have you done board id
0:08:22
take this as that one because um when i
0:08:26
was coding it i did
0:08:29
this but then it gave me that the key is
0:08:34
which is obviously because
0:08:38
the primary key in dyno db table is
0:08:41
board id not board name
0:08:46
try so i assume them again let's say if
0:08:51
ide and then i was about to change this
0:08:54
into board id as well but obviously
0:08:58
we don't have the board id here
0:09:02
yeah so that is why basically i was just
0:09:05
experimenting so essentially
0:09:10
like this when i identified the problem
0:09:23
do you have any suggestions or ideas how
0:09:27
we should approach
0:09:31
if we have to use a query then we need
0:09:36
as well from the front end
0:09:39
which we are not getting at the moment
0:09:48
we need a board id in the in the front
0:09:52
this would oh okay yeah that's tricky
0:09:57
so in order to get the board by name
0:10:04
we need the board id because the the
0:10:06
board id is actually the key
0:10:10
yeah okay yeah that makes sense that
0:10:16
and do you have any ideas or suggestions
0:10:20
how should we get the board id or
0:10:37
yeah that's a good one um
0:10:44
so i've got um i've got to say two
0:10:48
ways that we can approach this
0:10:56
would be to create a gsi which is the
0:10:59
global secondary index
0:11:07
come across them before
0:11:09
no i have no idea okay
0:11:12
cool so basically according to my
0:11:15
research um what global secondary index
0:11:18
is there is just an alt alternative key
0:11:26
okay so if a primary key is key
0:11:30
uh is board id but we wanna
0:11:33
you we wanna get the board by board name
0:11:37
then we can add the column board name as
0:11:41
a global secondary index interesting
0:11:46
so this is a dynamodb thing
0:11:50
okay okay do you think yeah
0:11:53
and the second way to approach this is
0:11:57
you know how we are getting all the
0:12:02
on page load in the front end
0:12:09
the solution that tory also helped us
0:12:14
we were using his code oh yeah okay so
0:12:19
in that one uh along with board names we
0:12:23
can also include the board ids
0:12:28
yeah i see what you're talking about i
0:12:30
think i think if a solution is better in
0:12:36
global secondary index isn't it yeah
0:12:40
and why would you say that
0:12:43
that's a better approach than the second
0:12:48
um because in yeah from
0:12:50
my perspective i think it's um
0:12:53
it would be a lot cleaner like you know
0:12:56
you're not really adding
0:12:58
something you know extra to the front
0:13:00
end that we might only use once in a
0:13:03
while like this one
0:13:05
it seems a lot cleaner you are you you
0:13:08
essentially um still going to be
0:13:10
interacting with the with the back end
0:13:12
and it's not really adding anything
0:13:14
that's you know unnecessary in my
0:13:18
correct and asia is
0:13:22
just that the ideal
0:13:24
solution should always be the
0:13:30
least amount of work
0:13:35
shouldn't really do any extra
0:13:41
it needs to and but it's not going to be
0:13:44
used afterwards for as in frequently
0:13:50
fantastic um so we can use the
0:13:54
gsi um if you can also keep an eye on
0:13:58
the comments um there'll be
0:14:03
great and really helpful as well
0:14:06
um what is the eslint actually
0:14:09
say i need to maybe i'll do some
0:14:11
research in my own time but just
0:14:12
wondering what's here
0:14:14
what is eslint yes lynn sorry oh so
0:14:22
didn't really know that uh it's as well
0:14:25
until i freezes so it's just a brand new
0:14:29
um basically it's an
0:14:31
is a javascript syntax
0:14:44
on the good practices good practices of
0:14:52
also highlight if you made any syntax
0:15:01
basically it's ecmas script
0:15:06
oh okay yeah yes linked yeah yeah make
0:15:11
fantastic all right cool so what we're
0:15:14
going to do is create a global secondary
0:15:17
index in our template
0:15:20
um i haven't done this and this would be
0:15:23
my first ever time so this will be an
0:15:26
interesting landing curve
0:15:32
so this is the global secondary index
0:15:36
okay let's google that
0:15:41
uh took the picture
0:15:54
download db table yeah that's exactly
0:16:03
right contribution size specification
0:16:08
the settings used to enable the card was
0:16:11
a hindsight for specific
0:16:14
global secondary index
0:16:22
so indexing name has to be a string q
0:16:27
provision football
0:16:29
the example might help
0:16:38
let me just check if i can find a good
0:16:44
okay global secondary index
0:16:47
is that one case camera
0:16:50
there has to be an example
0:16:55
so this is in jason this is in
0:17:03
if we have that redefinition key schema
0:17:06
yeah we've got a hash
0:17:10
probably uh my table name
0:17:18
where's my table name
0:17:22
that's interesting
0:17:28
probably don't need to give you a
0:17:37
okay let's keep on continuing
0:17:49
okay cool so ah here we go
0:17:52
here's the bad boy we need
0:17:55
global segment in texas
0:17:58
so just do this one
0:18:05
provision throughput so here global
0:18:32
what this space is for
0:18:38
let's see how i go
0:18:41
um i guess so bored
0:18:48
uh why'd you not turn into
0:18:56
gemma is really sensitive
0:19:03
you you will pick out everything and
0:19:05
smash on your face you got this wrong ha
0:19:10
all right cheerskeeper
0:19:37
so this would probably be the column
0:19:50
so yes sales album okay cool hash
0:19:56
oh no no no no no no
0:20:10
we don't need the artist
0:20:15
and then projection
0:20:18
non-key attributes
0:20:27
there has to be explanation down
0:20:38
and general attributes
0:20:41
if you include multiple dynamics
0:20:43
details with the index in a single
0:20:46
template aha okay multiple we're not
0:20:50
including multiple ones
0:20:52
so that's not really for us
0:20:55
just want to check
0:21:01
it's in this one table name
0:21:09
non-key attributes
0:21:13
tori asks what's the difference between
0:21:16
hash and range for key time
0:21:22
yeah that's a great question actually
0:21:26
yeah according to my
0:21:28
knowledge and there's kind of a broken
0:21:31
one from solutions architect exam
0:21:35
um actually hash is called the primary
0:21:38
key of the dynamodb whereas range is
0:21:42
called the kind of the soul key
0:21:50
actually let's google that
0:21:56
and see if i'm even right
0:22:00
okay an interesting a hashtag
0:22:03
okay so a hash key consists of a single
0:22:06
entry yeah yeah so it's a primary key
0:22:10
single attribute that uniquely
0:22:12
identifies an item
0:22:15
and then the hash and the range key
0:22:18
consists of two attributes together that
0:22:21
uniquely identifies an item yeah
0:22:28
the range is still assaulty is it
0:22:41
do you want to click on that stack
0:22:42
overflow hmm i was going to do that
0:22:53
means that single rowing diamond db has
0:22:56
a unique primary key made up of both
0:23:01
hash and range key
0:23:07
with a hash key of x
0:23:10
range here y your primary key is
0:23:12
effectively h and y
0:23:34
what was that one what was over there
0:23:45
no so i think we was trying to
0:23:47
say that our primary key would be with
0:23:51
these both sales and artists
0:24:00
for some reason i still don't understand
0:24:05
yeah there can be two primary keys which
0:24:07
would be called the composite keys in um
0:24:17
so would that mean that
0:24:21
hash and range are kind of a composite
0:24:31
tori says yeah composite key
0:24:34
and he says that yeah i think in these
0:24:38
cloud formation templates you don't
0:24:40
write primary key and sort key you write
0:24:48
understood that these are the specific
0:24:51
terminology from danville db well i
0:24:55
all this time i was thinking that
0:24:57
hash is a primary cube which i was right
0:25:00
but i didn't know range
0:25:02
is kind for a second primary key which
0:25:09
okay yeah i think i get it now
0:25:13
so both of these have to be specified
0:25:17
to bring up the record
0:25:22
whereas in our scenario we just
0:25:26
we don't need both of them we just need
0:25:34
one for once scenario and the other one
0:25:37
for the other scenario
0:25:39
we don't need both um yeah
0:25:47
non-key attributes and do you really
0:25:53
do you want to quickly google that as
0:25:55
well saying maybe it could help
0:26:04
example class section
0:26:06
on non-key attributes
0:26:08
the same attributes can be more than one
0:26:18
so basically it's self-explanatory
0:26:23
as in key attributes
0:26:25
would be the primary key but non-key
0:26:29
would be the all the ones that come with
0:26:38
do you know what i mean or not
0:26:44
at the moment i will bought up in the
0:26:48
maybe a free free columns board id board
0:26:51
nodes and board name
0:26:56
at the moment um primary key is board id
0:27:04
that would be the key attribute
0:27:11
and the non-key attribute would
0:27:14
obviously be the ones that they are
0:27:17
non-primary keys so board notes and
0:27:19
board names so keys
0:27:22
primary key hash key
0:27:27
okay does that make sense now
0:27:29
yeah i think that makes more sense
0:27:31
yeah because it says that um
0:27:36
say for each example it had
0:27:44
and it had the student
0:27:50
would have been the primary key
0:27:52
but in dynamodb's perspective it's a key
0:28:00
yeah makes sense yeah and then the
0:28:02
non-key attributes or the non-key
0:28:08
would be the class section the age of
0:28:14
yeah yeah okay that makes sense yeah
0:28:16
yeah i go you mean yeah interesting okay
0:28:21
okay so we don't really need projection
0:28:25
we're not dealing with the
0:28:27
um the non-key attributes here
0:28:34
non-key are the attributes that you want
0:28:36
to include in your global secondary
0:28:47
global secondary index table
0:28:50
right right right okay
0:28:57
that means that if we
0:28:59
just need the board name in our
0:29:04
new table as a global secondary index
0:29:09
do we still have to include that
0:29:12
in the non-key attributes even though we
0:29:17
specifying here in the
0:29:21
yes we do yes what stupid question
0:29:25
so tori says projection represents
0:29:27
attributes that are copied projected
0:29:31
into the global secondary index
0:29:33
these are in addition to the primary key
0:29:36
attributes and index key attributes
0:29:38
which are automatically projected
0:29:42
from the docs that he copied that from
0:29:51
read that uh that copied projected from
0:29:54
the table into the
0:29:57
to the primary key and the next thing it
0:29:59
will be to automatically protect it
0:30:03
i think which means to say story and
0:30:07
if i'm wrong that if i've created a
0:30:12
secondary index with the primary key of
0:30:15
a board name and if i only want the
0:30:18
board name column to be included in the
0:30:21
global secondary index table
0:30:25
because it's already included in the
0:30:32
key schema i don't have to include it
0:30:35
again in the non-key attributes
0:30:47
that's a close second with this table
0:30:55
yeah uh i could understand you basically
0:31:04
table that makes us
0:31:07
understand much better
0:31:10
i don't remember okay uh any way we can
0:31:15
try it um and hopefully
0:31:19
sam will actually scream ass if you're
0:31:24
so we can try that
0:31:29
so projection i don't think we need this
0:31:33
one if we are already including it in
0:31:38
provision throughput and read capacity
0:31:42
so we need that one so
0:31:46
global secondary projection no
0:31:52
same on the schema level we need
0:31:56
provision throughput
0:31:58
so that's the schema level isn't it
0:32:02
is that the schema level
0:32:06
this must be the schema
0:32:16
oh that makes much more sense
0:32:19
so this is our schematic level and we do
0:32:34
in through put read capacities units
0:33:07
and that's another one we don't need
0:33:10
that one okay cool
0:33:14
shall we test if this works for us
0:33:18
let's give it a go
0:33:20
this is gonna be really exciting
0:33:26
um board near key yeah
0:33:40
let's see if it screams ass
0:33:55
apparently i've done a pretty good job
0:34:16
okay yeah that's fine
0:34:32
says i think of these local and
0:34:35
secondary indexes as extra term tables
0:34:38
you can have to do quick lookups on
0:34:40
non-primary keys and whatever non-key
0:34:44
my understanding could be wrong but
0:34:46
that's what i remember from studying
0:34:48
which is getting foggy yeah i think that
0:34:51
really makes sense um you know to think
0:34:53
of them as tables it's like
0:34:55
it's easy to comprehend um
0:34:58
i kind of get what he's saying now i
0:35:08
it didn't create the
0:35:13
where did i go wrong
0:35:15
uh creating content terminal failure
0:35:18
for expressions taxpayers we match the
0:35:37
that because they've actually
0:35:40
altered the stab we need to
0:35:46
apis that the following
0:35:48
resources failed to update actually let
0:35:58
um the account and see what's happening
0:36:04
oh no not this one
0:36:15
yeah what tool is that saying by the way
0:36:32
uh it's called a bit warden
0:36:47
taurus says you can run sam validate my
0:36:51
first before you deploy try validation
0:37:06
for unexpected extra ah
0:37:08
that is a really help
0:37:13
go unexpected extra argument
0:37:16
but where's the extra argument
0:37:26
i should tell you the line um
0:37:30
i mean yeah i don't know if it does but
0:37:32
yeah it's not really telling at least
0:37:51
look at this one instead of calling you
0:37:53
know my spicy point
0:37:55
no that's not that one's
0:38:00
i'm trying to call
0:38:04
no this is something else
0:38:10
unexpected extra argument it must have
0:38:13
been done over here i'm pretty sure oh
0:38:19
maybe it's in this way
0:38:21
because on the top one's about in that
0:38:29
let's give that a try
0:39:14
yeah that's looking promising
0:39:18
template mapping values are not allowed
0:39:43
apparently there's a vs code extension
0:39:45
to link your ammo files
0:39:48
yeah try to mention that
0:39:53
uh what's it called
0:40:03
syntax support is this the one
0:40:06
it he said he can't remember what's it
0:40:11
apparently it is this one
0:40:21
let's pull by red hat
0:40:28
okay let's try this one
0:40:43
and you code string
0:40:46
line 53 so this is the problem here
0:41:20
oh an unexpected extra argument
0:41:33
where's the extra argument
0:41:40
actually i'm gonna get rid of this
0:41:43
this one and see what happens
0:42:16
samurai queen vault
0:42:22
come on come on where are you where are
0:42:25
you i've got unexpected extra argument
0:42:31
okay i'm gonna a minute uh what i'm
0:42:40
the whole part and see
0:42:51
i haven't even included that poem yet
0:43:02
hang on if i deploy
0:43:12
is that is the formatter done the
0:43:16
uh i haven't checked that one
0:43:21
i'll call my broke over here let's go
0:43:34
okay how do we do this
0:43:46
actually i'm gonna
0:43:48
close this and reopen it
0:43:51
maybe that might make it work
0:44:06
no okay yeah that's working now
0:44:34
i'll just do a guarded deployment again
0:44:37
and see if the stack
0:44:40
uploads successfully
0:44:46
sorry i missed a lot of comments let's
0:44:47
see what he said um
0:45:03
here it's called serbler's ide in bs
0:45:07
okay um he posted one in the
0:45:11
um in the comments
0:45:15
i'll just have a quick look
0:45:19
serverless oh right
0:45:22
i'll put it in the private section
0:45:25
so you can click on it
0:45:30
first so let's ideas code okay so what
0:45:33
we're gonna do is delete the ones that
0:45:37
we installed uninstall it
0:45:40
reload required yes
0:45:44
okay cool so that code was causing the
0:45:46
problem because this stack is built
0:45:57
all right so let's ide
0:46:07
confirmation that enhanced support for
0:46:10
sam clark i love this one
0:46:13
even though i haven't even used it
0:46:20
uh cfn lens is not installed or could
0:46:23
not be found installed now
0:46:35
i'll update my homebrew and all that
0:46:37
okay cool that's fine that
0:46:40
can take his time it's not going to stop
0:46:43
us from actually maybe it will stop us
0:46:48
no he won't it can take his time
0:47:18
this is exactly the one we need
0:47:22
answer i was just looking at this um the
0:47:30
okay yeah here we go so apparently we
0:47:36
you see they've added projection and
0:47:41
non-key attributes projection type
0:47:47
count should not be on attribute
0:47:50
definition because you're not using it
0:47:54
you don't need to use
0:47:57
you don't need to add you use idea
0:47:59
projection because it will it will be
0:48:02
projected automatically since it's
0:48:13
maybe that's where i went wrong
0:48:18
so basically where will we add
0:48:24
attribute name oh that's a table name
0:48:38
the column name itself
0:48:48
secure schema global secondary index
0:48:53
i need to front see this which
0:48:57
you need to add a table name at
0:49:00
attribute definition property from dog
0:49:05
so even if you don't use some attributes
0:49:07
in the original table you must declare
0:49:10
to be able to use all right
0:49:16
right right right so
0:49:20
uh from what i'm understanding that we
0:49:23
need to declare the column names in the
0:49:26
attribute definitions
0:49:29
the actual table properties
0:49:33
if we want to use them as the global
0:49:37
so see how he's using the table name
0:49:41
and in the attribute and this would be
0:49:48
this is in fact present in his attribute
0:49:54
which we don't have
0:50:07
yeah should we try this
0:50:11
yep yep a good idea
0:50:16
okay so attribute definition we would
0:50:20
insert one more over here
0:50:38
string and then coming back to
0:50:45
double second whoa
0:50:47
i like the extension
0:50:49
lovely thank you very much tori
0:50:56
that's awesome actually yeah
0:51:13
g type is that one
0:51:15
ah so we had to include rejection as
0:51:21
projection would be
0:51:23
non-key attributes
0:51:30
so basically by saying just count them
0:51:35
maybe that's the kind of like um
0:51:37
function he wants to run right
0:51:48
should not be on attribute definitions
0:51:53
because generally using as a key you
0:52:03
we can see probably from here
0:52:10
in your if you read the docs it tells
0:52:12
you what your what is required okay
0:52:16
let's just go there
0:52:20
oh my goodness if this is the first time
0:52:25
tsl's it's really as in
0:52:27
kind of a roller coaster ride isn't it
0:52:35
haven't even heard of it till today so
0:52:41
right attribute definitions i need
0:52:45
i needed projection isn't it
0:52:54
tourism to link in the chat i think
0:52:55
that's pretty helpful
0:52:58
um they're not saying anything about
0:53:01
that let's go to tory's
0:53:08
oh yeah that's the one
0:53:10
thank you finesse that's really helpful
0:53:16
actually i might need this
0:53:22
google secondary index okay projection
0:53:33
i was right about the
0:53:36
range key is so key
0:53:41
uh projection okay cool so represents
0:53:44
attributes that copied
0:53:46
project uh copied from the table into
0:53:49
the global secondary index
0:53:52
these are in addition to the primary key
0:53:55
attributes and index key attributes
0:53:58
which automatically projected
0:54:01
updates are no projection
0:54:08
i'm just trying to
0:54:10
understand they if it says that
0:54:15
they're copied from that table into the
0:54:18
secondary index jab which is
0:54:21
fine that makes sense design
0:54:24
these are in addition
0:54:26
to the primary key attributes and index
0:54:32
so if these are in addition
0:54:34
and we don't want the in addition
0:54:38
why does you have to be required then
0:54:52
these are in addition to the primary key
0:54:59
which are automatically projected so
0:55:07
a primary key attribute of
0:55:12
and the index key attribute of
0:55:16
by their c d and f
0:55:19
but we only want a and b
0:55:23
they would only be pre
0:55:25
they would already be projected as
0:55:29
because their primary key and index
0:55:32
key but the projection
0:55:36
would only would include the rest of the
0:55:40
columns which is b c and d
0:55:44
c d and e which are not
0:55:47
in the primary key and index key
0:55:51
am i making a little bit of sense
0:55:55
because to me that makes sense
0:55:57
no that actually makes sense to me
0:56:01
so i kind of get your perspective it's
0:56:03
like it feels like it should like you
0:56:05
don't really need to include it right
0:56:08
yeah because we are already
0:56:10
including your hair
0:56:13
which are automatically projected
0:56:18
all right i'm gonna
0:56:22
this and see what it does because
0:56:24
honestly from my understanding
0:56:26
we don't need it um i i could be wrong
0:56:32
tori will get deaf if he was hey he
0:56:35
would be able to correct me on this if
0:56:42
tori says click on projection
0:56:45
you have to have it
0:56:53
okay i have the projection but i won't
0:56:55
give anything into it
0:57:04
yeah it does sound wrong but
0:57:06
based on what how i'm understanding
0:57:10
even though my perspective might not be
0:57:14
but i want someone to actually correct
0:57:19
you're not looking at it from the right
0:57:23
yeah yep true true
0:57:32
it'll dance you my sis me now
0:57:39
oh is it torx says
0:57:42
oh yeah you can see that um
0:57:44
maybe if you go on the dock uh on the
0:57:48
and then click on that projection
0:57:51
link that one yeah
0:57:56
non-key projection position type string
0:58:00
non-key attributes
0:58:02
represents the non-characters which will
0:58:05
be projected into the index
0:58:13
secondary total counter
0:58:16
i want to get it with some runs close
0:58:22
if you put the same attributes into two
0:58:26
industries this column has two distinct
0:58:35
represents the non-key attributes
0:58:41
which will be projected into the
0:58:53
deploys i'll be really surprised
0:59:01
to be honest i'm trying to take a
0:59:06
because i just wanted to check if it
0:59:09
works with non-giving projection
0:59:20
did you try valedict i'm just curious
0:59:24
um so validate wouldn't help because it
0:59:28
giving the same error even if the stack
0:59:32
was deploying perfectly fine
0:59:45
okay yeah true okay i need to
0:59:51
cool so what we can basic
0:59:55
is give it say a board name
1:00:00
that's the only thing we've won isn't it
1:00:04
you might really have to put non-key
1:00:06
attributes and then
1:00:08
you know oh yeah yeah yeah i'll forgo
1:00:13
for reminding me man
1:00:18
how does the syntax go
1:00:21
provision projection
1:00:36
projection projection
1:00:42
can you do something like that
1:00:52
so we're just including the keys itself
1:00:57
uh oh yeah basically if that would be it
1:01:24
the scale of one to ten how much are you
1:01:34
i would say like yeah i would say like
1:01:36
10 probably that's all very new to me so
1:01:40
this is uh yeah that's something i'm
1:01:44
and talk about yourself so
1:01:49
i would say i was at 12.
1:01:58
the reason why i said 12 is because
1:02:02
i'm screwing up and then
1:02:12
theory i'm actually
1:02:14
as in we are hands on
1:02:16
we are failing and then
1:02:18
fixing failing and then fixing it
1:02:22
that's the the name of the show right
1:02:27
build break and fix
1:02:30
come on come on my baby you can do this
1:02:45
keys only projection tab okay so i'm
1:02:49
gonna forget this projection type and
1:02:52
given non-key attributes
1:02:55
oh my mind this is helping me
1:03:07
no not the projection type i want to
1:03:10
give it the actual
1:03:12
as in board net um the
1:03:16
type of the projection
1:03:21
so if you click on that
1:03:38
projection project type no projection
1:03:41
type um it would be string isn't it
1:03:49
projection type keys are include include
1:03:53
what would be only the index and primary
1:03:55
keys are projected into this index
1:03:58
yeah that's basically what we that's
1:04:00
what you need yeah
1:04:05
include in addition to that
1:04:07
describing his own lead no we don't need
1:04:10
this yeah and this will include other no
1:04:14
i'm not gonna go with that one
1:04:17
it just it makes sense right just a
1:04:18
projection type keys only
1:04:31
non-key protection time
1:04:38
required i see this is
1:04:44
not required either but
1:04:46
the projection has to be required
1:04:48
objection is required
1:04:51
either messing up somewhere
1:05:00
he's projection type keys only
1:05:04
does the error say anything that we can
1:05:10
saying that matt um
1:05:13
status we matched expected path
1:05:19
yeah it's not really being helpful
1:05:26
the following film
1:05:28
stories like 10 hours of debugging saves
1:05:30
me 5 minutes of reading the talks
1:05:55
we have given in the index name
1:05:58
oh hang on a minute
1:06:02
index name is there
1:06:07
why have you been using this part here
1:06:20
this is what i don't
1:06:40
they use that they use the dash in the
1:06:42
in the stack overflow
1:06:51
oh you can use that as well and see if
1:07:07
the keys already created i mean
1:07:11
if the keys already
1:07:13
created but we want to add an another
1:07:16
key it won't just update the stack
1:07:20
we would have to recreate it
1:07:30
going into this and checking what your
1:07:35
stop being lazy zane
1:07:47
oh there's some water as well
1:08:08
i must have messed up the
1:08:13
no basically i copy and pasted it
1:08:23
um so we're going to cloud formation
1:08:39
of the rollback so it rolled back
1:08:47
property provisioning throughput cannot
1:08:50
what okay so that was right
1:08:54
we forgot to give it the
1:09:24
you only need to recreate a dynamo
1:09:26
db table if you need to add a local
1:09:29
secondary index global you can add
1:09:33
all right okay i see
1:09:54
it's 40 past already
1:10:01
yeah yeah that's right it's pasta and
1:10:08
this if it works fine if it doesn't
1:10:11
always come back to tomorrow
1:10:48
um that's on the level of projection and
1:11:10
okay baby go work for us now please you
1:11:14
given everything you wanted
1:11:18
if you know i'll probably have to
1:11:22
check vacancies for uber
1:11:31
that's pretty cool terry sent a link
1:11:33
to github working example
1:11:41
is very helpful i'll go
1:11:44
straight after this doesn't work
1:11:48
hopefully it works
1:11:54
come on come on you got this we believe
1:12:05
sorry okay it's gonna be power now
1:12:11
okay fine there's a live class
1:12:15
validation error detected value s and
1:12:19
secondary in this room uh fail to
1:12:22
satisfy the constraint
1:12:37
saying value s it failed to satisfy the
1:12:53
it should be tight
1:13:01
what he says sorry
1:13:03
oh troy said if you read the docs
1:13:05
provision throughput is not required
1:13:14
interesting because on the sams sam
1:13:26
that's interesting
1:13:37
someone forgot to update the
1:13:53
come on now come on you have to do this
1:14:02
last try for today
1:14:13
okay that's fine i'll probably continue
1:14:18
time we are that close
1:14:27
take this link as well and print it
1:14:33
word so it's easier
1:14:37
wow face seven comments
1:14:45
that was a great learning curve
1:14:54
do you want to do the closing
1:14:57
uh yeah sure thing
1:14:59
um so today we're trying to set up
1:15:02
gsi on dynamodb basically so that
1:15:10
uh finish our get bought names function
1:15:15
by using the board id to
1:15:18
uh to retrieve the board name from the
1:15:22
um sorry i'll just correct you on that
1:15:26
by retrieving the board and board names
1:15:30
but retrieving the board names from the
1:15:34
from uh the database so
1:15:43
by using the board name to retrieve the
1:15:45
borders object uh from the database
1:15:49
um so basically we're amending the the
1:15:53
template.yaml file to do this and um
1:15:57
we got very very close i think um but
1:16:01
just a little bit more and uh yeah we'll
1:16:04
get there and you know we can we can
1:16:09
with finishing up that function so yeah
1:16:12
uh that will will continue that in the
1:16:18
should we the post-mortem recap yeah
1:16:28
um yeah so we'll see you tomorrow same
1:16:31
time same place and
1:16:37
can't wait to see you guys and in the
1:16:39
meanwhile wherever you are in
1:16:44
good afternoon and for if you're from
1:16:47
melbourne australia it would be a great
1:16:51
we'll see you tomorrow
1:16:52
have a good night cheers bye see you